RAM支持使用OAuth 2.0協議進行用戶認證和應用授權。本文介紹阿里云OAuth 2.0服務的基本概念、應用場景和OAuth范圍。
基本概念
概念 | 說明 |
用戶 | 用戶需要登錄到阿里云并授權應用訪問阿里云資源。用戶可以是阿里云賬號(主賬號)、RAM用戶和RAM角色。 說明 2024年09月10日之前已創建的OAuth應用不支持RAM角色,請提交工單申請。 |
阿里云OAuth 2.0服務 | 阿里云OAuth 2.0服務對用戶進行認證,并接受用戶對應用的授權,生成代表用戶身份的令牌并返回給被授權的應用。 |
OAuth應用 | 使用OAuth應用獲取用戶授權,并獲取代表用戶身份的令牌,從而可以訪問阿里云。 阿里云OAuth 2.0服務支持以下幾種類型的應用:
按照應用的歸屬,可以將應用分為以下幾種:
|
OAuth范圍 | OAuth 2.0服務通過OAuth范圍來限定應用扮演用戶登錄阿里云后可以訪問的范圍。支持的范圍如下:
|
令牌 | OAuth 2.0服務可以給應用下發代表登錄用戶的令牌。
|
阿里云API | 應用通過調用API可以訪問相應資源。 |
應用場景
OAuth范圍
阿里云RAM產品提供openid、aliuid、profile三個OAuth范圍,獲得用戶授權可獲得下表所示的信息。
參數名稱 | 定義 | 示例 | 需要的OAuth范圍 |
exp | 令牌過期時間戳。 | 1517539523 | openid |
sub | 唯一代表登錄用戶的字符串,但并不包含阿里云UID、用戶名等信息。 說明 當登錄用戶為RAM角色時,sub將根據角色扮演者 | 123456789012**** | openid |
aud | 令牌接收者,OAuth應用ID。 | 4567890123456**** | openid |
iss | 令牌頒發者。取值為 | https://oauth.aliyun.com | openid |
iat | 令牌頒發時間戳。 | 1517533200 | openid |
aid | 登錄用戶所屬的阿里云賬號(主賬號)ID。 | 177242285274**** | aliuid |
uid | 登錄用戶的ID。取值:
| 20124982101502**** | aliuid |
type | 登錄用戶類型。取值:
| user | profile |
login_name | 阿里云賬號(主賬號)的登錄名稱。 說明 阿里云賬號(主賬號)請求時才會返回該參數。 | Alice | profile |
upn | RAM用戶的登錄名稱。 說明 RAM用戶請求時才會返回該參數。 | Bob@examplecompany.onaliyun.com | profile |
name | 登錄用戶名稱。取值:
說明 RAM用戶和RAM角色請求時才會返回該參數。 | Bob | profile |