see: OAuth 2.0

see: It's Time for OAuth 2.1

see: OAuth2/OpenID Connect Grant_type & 应用场景

see: OAuth2.0示例

see: OAuth2.1示例

see: OIDC示例

1 概览

名称 设计目的 客户端类型 说明
OAuth 三方授权 第三方应用
OpenID Connect 1、三方授权
2、身份认证
1、第一方应用
2、第三方应用
1、基于OAuth2.0实现。
2、区别:OIDC在返回access_token时,会同时返回id_token
3、id_token包含用户信息。如openId、phone、email等

2 OAuth2 & OpenID Connect角色

OAuth2 OpenID Connect
Authorization Server
授权服务器
OpenID Provider(OP)
提供身份认证的服务方
Resource Server
资源服务器
Resource Owner
资源所有者,即用户
End User(EU)
资源所有者,即用户
Client
客户端
Relying Party(RP)
认证服务的依赖方
ID Token
包含 EU 身份认证信息的 JWT 格式数据,是用户的身份凭证

3 版本演进 & Grant_type

  • Authorization Code
  • Authorization Code with PKCE
  • Client Credentials
  • Implicit(OAuth2.1已废弃)
  • Password(OAuth2.1已废弃)
  • Device Code(OAuth2.1新增)