三、OAuth 2.0 角色

角色

OAuth 2.0为用户和应用定义了如下角色:

  • 资源拥有者
  • 资源服务器
  • 客户端应用
  • 授权服务器
  • 这些角色在下图中表示为:

 

OAuth 2.0规范中的角色定义

资源拥有者是指拥有共享数据的人或应用。比如Facebook或者Google的用户就是是资源拥有者,他们拥有的资源就是他们的数据。资源拥有者在上图中被描述为人,这也是最常见的情况。但资源拥有者也可以是一个应用。OAuth 2.0规范中包含这两种可能性。

资源服务器是指托管资源的服务器。比如,Facebook或Google就是资源服务器(或者有一个资源服务器)。

客户端应用是指请求访问存储在资源服务器的资源的应用。资源被资源拥有者所拥有。客户端应用可以是一个请求访问用户Facebook账号的第三方游戏。

授权服务器是指授权客户端应用能够访问资源拥有者所拥有的资源。授权服务器和资源服务器可以是同一个服务器,但不是必须的。如果这两个服务器是分开的,OAuth 2.0没有讨论这个两个服务器应该如何通信。这是由资源服务器和授权服务器开发者自己设计决定的。