我对OAuth2.0作为授权方法和OpenIDConnect作为身份验证方法的使用感到困惑。
根据我的知识,OAuth 2.0只是一种授权方法。换句话说,这是请求访问令牌并接收该访问令牌的过程,如下图中黄色椭圆所示:(简化)
在OAuth 2.0客户端从授权服务器检索访问令牌之前,此服务器应验证用户是否允许,这是OAuth 2.0不关心的身份验证过程。
当openid connect包含在混合中时,它也允许使用身份验证方法,但据我所知,openid connect只是在jwt令牌中添加了一个“声明”,其中包含有关正在使用该服务的用户的信息,如:email、name和其他。
我的问题是:
-
为什么不忽略openid connect并在OAuth中添加更多“声明”
2.0获取用户信息?
-
我对流程的描述是否正确?
只是一种授权方法。换句话说,这是请求访问令牌并接收该访问令牌的过程,如下图中黄色椭圆所示:(简化)
在OAuth 2.0客户端从授权服务器检索访问令牌之前,此服务器应验证用户是否允许,这是OAuth 2.0不关心的身份验证过程。
当openid connect包含在混合中时,它也允许使用身份验证方法,但据我所知,openid connect只是在jwt令牌中添加了一个“声明”,其中包含有关正在使用该服务的用户的信息,如:email、name和其他。
我的问题是:
-
为什么不忽略openid connect并在OAuth中添加更多“声明”
2.0获取用户信息?
-
我对流程的描述是否正确?