当前位置: 首页 > 工具软件 > oauth2orize > 使用案例 >

NodeJS - oauth2orize

骆磊
2023-12-01

OAuth2orize 是 NodeJS 的授权服务器工具包。它提供了一套中间件, 这些中间件与 passport 身份验证策略和特定于应用程序的路由处理程序相结合, 可用于组装实现 OAuth 2.0 协议的服务器。

server.exchange(oauth2orize.exchange.password({userProperty: 'clientPortal'}, (client, username, password, scope, body, done) => {
}));
  • oauth2orize.exchange.password中的参数client, username, password, scope, body是由发送验证请求API的body部分来填充的。
验证请求API的body内容:
{
    "grant_type": "password",
    "username": "123@163.com",
    "password": "123"
}
  • body的内容如下,其中username和password不能变更。oauth2orize.exchange.password中的参数名称是可以变更的,如username变更为username1,依然是可以接收到"123@163.com"内容的。原因在于:
function password(options: Options, issue: (client: any, username: string, password: string, scope: string[], body: any, authInfo: any, issued: ExchangeDoneFunction) => void): MiddlewareFunction;
  • 目前body中无scope,所以oauth2orize.exchange.password接收的scope内容为undefined。
  • oauth2orize.exchange.password中的client内容则是由authHelper.isClientAllowed权限验证中间件获取的。
 类似资料: