【发布时间】:2018-12-15 05:58:23
【问题描述】:
在 OAuth2 协议中,Client(OIDC 中的 RP)应用程序获取访问令牌,使其能够代表不同的服务(资源服务器角色) 资源所有者。
另一方面,在 OpenID Connect 协议中,Client 获得 2 个令牌(access 和 id 令牌)。现在,此客户端可以使用访问令牌从 UserInfo 端点获取用户声明。
- OP(授权服务器)在这里扮演资源服务器的角色(就 OAuth2 而言),客户端代表用户获取用户数据吗?
- 客户端如何使用 ID 令牌?客户端是否将此 ID 令牌传递给资源所有者的用户代理(浏览器),然后,用户代理存储此令牌以启用 SSO(cookie)?
- 客户端(例如,与获得 ID 令牌的不同)是否必须在每次用户访问它时验证令牌(调用 OP 来验证它),或者客户端仅在它第一次被此令牌访问时才这样做,并且然后创建安全上下文,使其能够每次在 OP 中消除此验证请求?在这种情况下,如何实现这个安全上下文?
- 当客户端可以使用 ID 令牌访问 UserInfo endoint 时,除了获取用户声明以及为什么它与 ID 令牌一起发送之外,访问令牌的用途是什么?
【问题讨论】: