我正在尝试使用express.js构建一个身份验证服务,但我还没有认识到身份验证模块的想法.
护照和oauth中间件有什么区别?他们互相依赖吗?没有oauth服务器的BearerStrategy为BearerStrategy验证生成令牌是没用的吗?我是正确的吗?
我已经阅读了关于oAuth2及其身份验证流程的内容,但我仍然对这个非耦合代码感到迷茫.
我正在尝试使用刷新令牌为我的AngularJS前端与后端API进行通信来构建资源所有者密码身份验证,并且我面临着许多password.js策略(Basic,Bearer,ClientPassword)的组合,另一方面是oauth2orize .
所以,我想知道一个关于身份验证如何在NodeJS上运行的非常简单的解释.实际上,我知道Express并没有发明一种新的身份验证方式,但这些模块过于不引人注目,我需要了解它如何协同工作以实现它们协同工作.
我已经开发了一个带有sailsjs的REST API,我想添加OAuth2授权来保护这个API.我对OAuth很新,我不知道从哪里开始.
我找到了几个可用于此目的的模块,例如oauth2orize及其使用示例https://github.com/aaron524/sails-oauth2-provider-example但我不完全理解这是如何在内部工作的.
基本上,我将有几个客户正在使用我正在开发的API: - 我信任的客户,我想使用"资源所有者凭据授权" - 我不信任的客户端,并且将使用授权代码流程
我想在sails应用程序中向Client模型添加一个可信属性,然后当用户登录到一个应用程序时: - 他将直接访问其资源(可信应用程序的情况) - 他将被要求批准或拒绝应用程序访问其资源(不受信任的应用程序的情况)
这是一个好方法吗?有关如何根据客户端可信级别选择相应策略的指示?
UPDATE
我在GitHub上设置了以下项目,使用了我发现的几个教程和项目.
https://github.com/lucj/sails-oauth2-api
Run Code Online (Sandbox Code Playgroud)
该项目尚未实施.
当用户通过应用程序使用API时,我仍然不清楚如何选择正确的授权类型(授权代码与资源所有者的密码).如何将此检查整合到策略中?
我无法在OAuth endPoint(/ oauth/authorize,/ oauth/token)和对oauth2orize的调用之间创建链接.任何的想法 ?
我目前正在 SSR 页面中使用 PKCE 进行 oauth 2.0 代码授权授权(在前面使用 React,在后面使用 Express)。
code_verifier当客户端请求授权服务器代码时我应该存储在哪里(当授权服务器创建 code_challenge 和 code_verifier 以进行验证时)。我在独立的堆栈/基础设施中运行授权服务器。
我应该存储code_verifier在 req.headers 中吗?(参见Campbell OAuth TBPKCE-00 草案)
我们正在遵循RFC6749
我们正在尝试实现oauth 2服务器和api服务器(两者都是不同的服务器).(对所有人使用nodejs)
我们正在使用https://github.com/FrankHassanabad/Oauth2orizeRecipes授权码流程
我们是否需要在oauth服务器中编写新的validateToken函数,只需从api端点击它即可对该用户进行身份验证.
我们正在考虑将用户和角色保留在oauth端,但我们需要在api端检查它们,然后再给出api呼叫响应.
我们正在尝试将其用于身份验证以及cms和移动应用程序.我们是正确的轨道还是遗漏了什么.
node.js ×4
oauth2orize ×4
oauth ×2
oauth-2.0 ×2
passport.js ×2
express ×1
pkce ×1
reactjs ×1
sails.js ×1