了解OpenID和OAuth 先搞懂这些概念

OpenID Connect Provider (OP)
OAuth 2.0 Authentication Server 授权服务器,能够对终端用户进行身份验证,向Relying Party提供有关身份验证事件和最终用户的声明。

依赖方Relying Party (RP)是指OAuth 2.0客户端应用程序,需要终端用户认证并且claims是来自于OP。

Entity实体:一种有着独立和独特存在的东西,可以在上下文中识别。终端用户就是实体的一个例子。

Claim:一些关于实体的信息被包含到ID token中。一个OP(OpenID Connect Provider)要文档说明和记录哪些声明信息应该被包含在ID tokens中。

在认证事件中,以下声明是必须的:

  • aud (Audience): 必须包含在颁发处(issuer)注册的RP(Relying Party)的客户端标识符。
  • iss(Issuer): OP的颁发处标识符(issuer identifier).
  • exp (Expiration time): RP(Relying Party)必须在有效期内验证ID token.
  • iat (Issued at): ID token的颁发时间.

有关用户的必需声明(claim):

  • sub (Subject):颁发处(issuer)那里有一个终端用户在本地唯一和永久(从未被重新分配)的标识符

用户可选择的声明(claim)包括:姓名,年龄,头像,性别……

Scope:表示申请的权限范围

Bearer token:从token endpoint发放的token,包括一个access token, ID token和一个refresh token。

ID token:JSON Web Token (JWT)包含了用户信息和认证事件的claims;

Refresh token:用来获取新的access token的一串字符;

Issuer: 发布一系列claims。

实战之Angular安全路由

References:

OpenID: https://openid.net/developers/specs/
angular-oauth2-oidc
Angular4 开发实战:(12) 安全路由

你可能感兴趣的:(了解OpenID和OAuth 先搞懂这些概念)