场景 - 需要使用OpenID连接进行身份验证的旧应用程序。我们使用keycloak作为IP。
所有,我真正需要的是针对多个应用程序的单一身份验证机制。身份验证后,我还需要'user-id'
信息(声明)。
我有access_token(范围openid
)。我是否还需要id_token
来访问" user-id"信息?或者我需要解码" access_token
?
答案 0 :(得分:2)
您确实需要id_token
,因为只有该令牌会告诉您该用户是谁登录的,用户登录的位置以及该令牌是否实际为您的应用程序发出而未与其他人交换。< / p>
access_token
具有不同的语义:它本身不会告诉您什么,但可以用来访问受保护的资源。此外,访问令牌可以由中间人交换。