Jam*_*mes 4 security openid-connect
我正在开发一个Javascript app + REST API.
我希望用户通过OpenID Connect Provider对应用程序(和底层REST API)进行身份验证,以实现SSO目的.
使用Implicit流程我可以获得一个ID令牌(JWT)来识别我的javascript应用程序的用户.我希望我可以在Authorize标头中发送此JWT,以请求我的REST API对用户进行身份验证.但是,这种方法的问题是JWT的'aud'字段不适用于REST API服务器,它适用于javascript应用程序.
这是否意味着隐式流不适合我的用例,或者我错过了什么?
Implicit Flow专为不受信任的客户端(例如JavaScript)设计,以获取身份以及(可选)访问令牌.
使用OpenID Connect,您的身份验证请求必须在response_type参数中包含id_token,但它也可以在参数中包含令牌.请参阅规范中的3.2.2.1(http://openid.net/specs/openid-connect-core-1_0.html#ImplicitAuthRequest)
例如
GET /authorize?
response_type=id_token%20token
&client_id=s6BhdRkqt3
&redirect_uri=https%3A%2F%2Fclient.example.org%2Fcb
&scope=openid%20profile
&state=af0ifjsldkj
&nonce=n-0S6_WzA2Mj HTTP/1.1
Host: server.example.com
Run Code Online (Sandbox Code Playgroud)
id_token意味着您将获得您提到的ID令牌.令牌意味着它还将返回一个访问令牌,这是您用于访问REST API的权限.
归档时间: |
|
查看次数: |
3899 次 |
最近记录: |