使用限制

使用執行個體 RAM 角色存在如下限制:

  • 只有專有網路 (VPC) 網路類型的 ECS 執行個體才能使用執行個體 RAM 角色。
  • 一個 ECS 執行個體一次只能授予一個執行個體 RAM 角色。
  • 當您給 ECS 執行個體授予了執行個體 RAM 角色後,並希望在 ECS 執行個體內部部署的應用程式中訪問雲產品的 API 時,您需要通過 執行個體元資料 獲取執行個體 RAM 角色的臨時授權 Token。參閱 6. (可選)獲取臨時授權 Token
  • 如果您是通過 RAM 使用者子帳號使用執行個體 RAM 角色,您需要通過雲帳號 7. (可選)授權 RAM 使用者使用執行個體 RAM 角色

前提條件

您已經開通 RAM 服務,參閱 RAM 文檔开通方法 開通 RAM 服務。

1. 建立執行個體 RAM 角色

  1. 登入 RAM 控制台
  2. 在瀏覽窗格中,單擊 角色管理
  3. 在角色管理頁面,單擊 新建角色
  4. 在彈窗中:
    1. 角色類型 選擇 服務角色
    2. 類型資訊 選擇 ECS 雲伺服器
    3. 輸入角色名稱稱及備忘,如 EcsRamRoleDocumentTesting。

    4. 單擊 確認 完成新建。

2. 授權執行個體 RAM 角色

  1. 登入 RAM 控制台
  2. 在瀏覽窗格中,單擊 策略管理
  3. 策略管理 頁面,單擊 新建授權策略
  4. 在彈窗中:
    1. 權限原則模板 選擇 空白模板
    2. 輸入 授權策略名稱策略內容,如 EcsRamRoleDocumentTestingPolicy。
      说明
      關於如何編寫策略內容,您可以參閱 RAM 文檔Policy 语法结构。

    3. 單擊 新建授權策略 完成授權。
  5. 在瀏覽窗格中,單擊 角色管理
  6. 角色管理 頁面,選擇建立好的角色,如 EcsRamRoleDocumentTesting,單擊 授權
  7. 輸入建立的 授權策略名稱,如 EcsRamRoleDocumentTestingPolicy。
  8. 單擊符號 > 選中策略名,單擊 確認



3. 授予執行個體 RAM 角色

  1. 登入 ECS管理主控台
  2. 在瀏覽窗格中,單擊 執行個體
  3. 選擇地域。
  4. 找到要操作的 ECS 執行個體,選擇 更多 > 授予/收回 RAM 角色
  5. 在彈窗中,選擇建立好的執行個體 RAM 角色,如 EcsRamRoleDocumentTesting,單擊 確定 完成授予。

4. (可選)收回執行個體 RAM 角色

  1. 登入 ECS管理主控台
  2. 在瀏覽窗格中,單擊 執行個體
  3. 選擇地域。
  4. 選擇一個已經授予 RAM 角色的 ECS 執行個體,選擇 更多 > 授予/收回 RAM 角色
  5. 操作類型 選擇 收回,單擊 確定 即可收回執行個體 RAM 角色。

5. (可選)更換執行個體 RAM 角色

  1. 登入 ECS管理主控台
  2. 在瀏覽窗格中,單擊 執行個體
  3. 選擇地域。
  4. 選擇一個已經授予 RAM 角色的 ECS 執行個體,選擇 更多 > 授予/收回 RAM 角色
  5. 操作類型 選擇 授予,在已有 RAM 角色 中選擇其他執行個體 RAM 角色,單擊 確定 即可更換當前 RAM 角色。

6. (可選)獲取臨時授權 Token

您可以獲得執行個體 RAM 角色的臨時授權 Token,該臨時授權 Token 可以執行執行個體 RAM 角色的許可權和資源,並且該臨時授權 Token 會自動周期性地更新。樣本:

  1. 遠端連線並登入到 ECS 執行個體。
  2. 檢索名為 EcsRamRoleDocumentTesting 的執行個體 RAM 角色的臨時授權 Token:
    • Linux 執行個體: 執行命令 curl http://100.100.100.200/latest/meta-data/Ram/security-credentials/EcsRamRoleDocumentTesting
    • Windows 執行個體:參閱 執行個體元資料
  3. 獲得臨時授權 Token。返回樣本如下:
    
    {
    "AccessKeyId" : "XXXXXXXXX",
    "AccessKeySecret" : "XXXXXXXXX",
    "Expiration" : "2017-11-01T05:20:01Z",
    "SecurityToken" : "XXXXXXXXX",
    "LastUpdated" : "2017-10-31T23:20:01Z",
    "Code" : "Success"
    }

7. (可選)授權 RAM 使用者使用執行個體 RAM 角色

说明
當您授權 RAM 使用者使用執行個體 RAM 角色時,您必須授權 RAM 使用者對該執行個體 RAM 角色的 PassRole 許可權。其中,PassRole 決定該 RAM 使用者能否直接執行角色策略賦予的許可權。

登入 RAM 控制台,參閱为RAM用户授权 完成授權,授權策略如下所示:


{
"Version": "2016-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"ecs: [ECS RAM Action]",
"ecs: CreateInstance",
"ecs: AttachInstanceRamRole",
"ecs: DetachInstanceRAMRole"
],
"Resource": "*"
},
{
"Effect": "Allow",
"Action": "ram:PassRole",
"Resource": "*"
}
]
}

其中,[ECS RAM Action] 表示可授權 RAM 使用者的許可權,請參閱 鑒權規則

參考連結