RAM 支持使用 OAuth 2.0 协议进行用户认证和应用授权。本文介绍 OAuth 2.0 的基本概念和应用场景。

OAuth 基本概念

为了更好的理解 OAuth 2.0 协议,下面简要介绍与 OAuth 2.0 相关的一些基本概念:

用户
此处用户可以是主账号也可以是 RAM 用户,用户需要登录到阿里云并授权应用访问阿里云资源。
阿里云 OAuth 2.0 服务

对用户进行认证,并接受用户对应用的授权,生成代表用户身份的令牌并返回给被授权的应用。

OAuth 应用

获取用户授权,并获取代表用户身份的令牌,从而可以访问阿里云。

OAuth 2.0 服务目前支持的应用类型包括:
  • WebApp:指基于浏览器交互的网络应用。
  • NativeApp:指操作系统中运行的本地应用,主要为运行在桌面操作系统或移动操作系统中的应用。
OAuth 范围

OAuth 2.0 服务通过 OAuth 范围来限定应用扮演用户登录阿里云后可以访问的范围。

目前 OAuth 支持的范围如下:
  • openid:获取登录用户的基本信息(默认授权域,不可移除)。
    说明 OpenID Connect(OIDC) 协议的默认范围,所有的应用默认具有这一范围,不需要额外添加。
  • aliuid:阿里云颁发的唯一用户标志符。
  • profile:用户名称等个人信息。
  • /acs/ccc:阿里云呼叫中心服务 API。
  • /acs/alidns:阿里云解析 API。
说明 openidaliuidprofile 这几个范围与身份令牌相关,其他范围都与访问令牌相关。
令牌
OAuth 2.0 服务可以给应用下发代表登录用户的令牌。
  • 身份令牌:身份令牌只包含用户的身份信息,不能用于访问阿里云资源。
  • 访问令牌:访问令牌包含了用户的身份信息以及应用的 OAuth 范围,可以用于访问 OAuth 范围内的阿里云资源。
  • 刷新令牌:刷新令牌可以用于换取新的访问令牌。
阿里云 API
应用通过调用 API 可以访问相应资源。

OAuth 的应用场景