【问题标题】:oAuth2 server. Should I have single or different endpoints for different grant typeoAuth2 服务器。对于不同的授权类型,我应该有一个端点还是不同的端点
【发布时间】:2014-01-02 08:09:09
【问题描述】:
根据文章oauth2 Simplified,oAuth 服务器可能是 4 种授权类型。
-
在网络服务器上运行的应用的授权码
-
隐式用于基于浏览器或移动应用程序
-
密码用于使用用户名和密码登录
-
客户端凭据用于应用程序访问
所以问题是 - 我是否应该为所有这些端点设置一个端点,然后根据提供的查询字符串选择使用哪个端点,或者每个授权类型都实现一个端点会更好?
【问题讨论】:
标签:
authentication
oauth
oauth-2.0
【解决方案1】:
来自the OAuth2 specs:
协议端点
授权过程使用两个授权服务器
端点(HTTP 资源):
o 授权端点 - 客户端用于获取
资源所有者通过用户代理重定向授权。
o 令牌端点 - 客户端用于交换授权
授予访问令牌,通常使用客户端身份验证。
以及一个客户端端点:
o 重定向端点 - 由授权服务器用于
返回
包含通过客户端授权凭据的响应
资源所有者用户代理。
并非每种授权授权类型都使用两个端点。
扩展授权类型可以根据需要定义额外的端点。
所以答案是:复用多个流的端点,但要区分授权端点和令牌端点。