我需要创建一个自己的OAUTH Provider,以验证第三方应用程序请求,我不想使用Google,Twitter,LinkedIn,Microsoft提供商.我必须创建自己的提供程序来验证请求并将访问令牌返回给客户端.但网上的所有帮助都与外部提供商有关(谷歌,LinkedIn,Twitter,Facebook ......).任何人都可以帮助我创建自己的自定义提供程序吗?
小智 7
正如罗兰所说,如果你完成规范,它就会非常直接.
在高层次上,您需要做的是支持AuthCode授权模式:
假设:您的应用程序拥有用户.
当客户端点击授权端点时,如下所示:
/authorize?response_type=code&client_id=<clientID>&state=xyz&redirect_uri=http://thirdparty.com
这里有回调示例
https://thirdparty.com/cb?code=SplxlOBeZQQYbYS6WxSbIA&state=xyz
然后,客户端将使用authcode调用/ token URI,如下所示:
/token?grant_type=authorization_code&code=SplxlOBeZQQYbYS6WxSbIA&redirect_uri=http://thirdparty.com
Run Code Online (Sandbox Code Playgroud)
生成令牌,将其存储在clientID,UserId并使用令牌回复.像下面的东西
{
"access_token":"2YotnFZFEjr1zCsicMWpAA",
"token_type":"example",
"expires_in":3600,
"refresh_token":"tGzv3JOkF0XG5Qx2TlKWIA",
"example_parameter":"example_value"
}
Run Code Online (Sandbox Code Playgroud)
当第三方访问您的服务/资源时,针对客户端和用户标识验证令牌并授予或拒绝访问权限.
这是为了开始,但可以使用范围和其他OAuth2模式进行更多自定义.
归档时间: |
|
查看次数: |
3836 次 |
最近记录: |