OAuth 2.0 - 断言


断言是一个信息包,使跨不同安全域的身份和安全信息共享变得更加容易。

它保存有关主题的数据、断言被认为有效的情况,例如可以使用断言的地点和时间。

创建或保护断言的实体称为发行者

根据其信息使用断言的实体称为依赖方

断言有两种一般类型。他们是 -

  • 承载断言-任何实体都可以使用断言来获取对关联资源的访问,其中实体可以负责承载断言。

  • 密钥持有者断言- 在这种情况下,如果实体想要访问相关资源,则必须证明拥有额外的加密材料。

下图描述了第三方创建的断言。

断言

步骤 1 - 这是客户端首先请求第三方实体断言的第一种情况,通常称为“令牌服务”或“安全令牌服务”。令牌服务能够向客户端发行、更新、验证和转换安全令牌。

步骤 2 - 令牌服务通过授予断言来满足客户端的请求。

步骤 3 - 令牌服务和依赖方之间存在信任关系。然后,客户端向依赖方发出断言。

步骤 4 - 依赖方验证断言并通知客户端有关状态。

下图描述了自我发出的断言。

自我断言

步骤 1 - 这是客户端本身在本地创建断言的第二种情况。它不必请求第三方实体进行断言。

步骤 2 - 然后客户端向依赖方发出创建的断言。

步骤 3 - 依赖方验证断言并通知客户端状态。

使用断言作为授权

使用以下 HTTP 请求参数,客户端在使用断言作为授权授予时包含断言和相关信息。

  • grant_type - 授权服务器定义的断言格式。

  • 断言- 由配置文件文档定义的断言的特定序列化。

  • 范围- 令牌的授权先前通过某种带外机制授予,同时交换访问令牌的断言。在这种情况下,请求的范围必须等于或小于授予授权访问者的原始范围。

oauth2.0_obtaining_an_access_token.htm