RAM憑據是指RAM使用者的存取金鑰(AccessKey),包括AccessKey ID和AccessKey Secret,用於RAM使用者在調用阿里雲API時完成身分識別驗證,避免寫入程式碼AccessKey導致泄露。本文介紹如何管理及使用RAM憑據。
功能介紹
在KMS託管RAM憑據後,您無需在應用程式中配置AccessKey,只需配置憑據名稱,通過憑據名稱擷取有效AccessKey用於調用阿里雲API。同時RAM憑據也支援輪轉,以降低AccessKey泄露的風險。
使用限制
只支援託管RAM使用者(子帳號)的AccessKey,不支援託管阿里雲帳號(主帳號)的AccessKey。
RAM憑據輪轉
輪轉時存取控制RAM會先建立一個新的AccessKey,然後刪除舊的AccessKey。同時KMS將新的AccessKey寫入憑據值,並刪除舊的AccessKey對應的憑據值。輪轉支援如下兩種方式:
輪轉方式 | 輪轉時間長度 | 使用情境 |
周期性自動輪轉 | 約2天 | 使用該AccessKey的應用,均已將RAM憑據整合到了應用中,且應用會周期性地讀取RAM憑據。 建議您設定自動輪轉周期時,不超過3個月,以降低AccessKey被泄露的風險。 |
立即輪轉 | 由您設定,可設定為10分鐘~2天。 RAM憑據泄露時,建議您設定為30分鐘,其他情境建議您設定為2天。 |
|
RAM憑據處於輪轉狀態時,請勿刪除憑據關聯的RAM使用者,避免憑據輪轉失敗。
RAM憑據處於輪轉狀態時,不支援設定周期性輪轉策略以及進行立即輪轉。
前提條件
已購買和啟用KMS執行個體。具體操作,請參見購買和啟用KMS執行個體。
已在KMS執行個體中建立用於加密憑據的對稱金鑰。具體操作,請參見建立密鑰。
如果您使用RAM使用者(子帳號)或RAM角色管理RAM憑據,請確保阿里雲帳號(主帳號)已將系統策略AliyunKMSSecretAdminAccess和AliyunRAMReadOnlyAccess授予RAM使用者或RAM角色。具體操作,請參見為RAM使用者授權或為RAM角色授權。
步驟一:授予KMS管理RAM使用者AccessKey的許可權
使用RAM憑據需要授權KMS訪問AK許可權,才能使KMS能管理RAM憑據、完成RAM憑據輪轉等任務。
授權步驟如下:
登入Key Management Service控制台,在頂部功能表列選擇地區後,在左側導覽列單擊 。
單擊RAM凭据頁簽,選擇实例ID後,單擊创建凭据。
在RAM憑據建立頁,點擊请先授权KMS 访问AK 权限,跳轉至雲資源訪問授權頁。
在雲資源訪問授權頁,點擊同意授权。
警告如果您是普通RAM使用者(子帳號)或普通RAM角色,請將授權連結發送至Resource Access Management員(有資源系統管理權限的RAM使用者或者主帳號),由Resource Access Management員完成授權AK許可權操作。
授權完畢後,系統會自動建立服務關聯角色AliyunKMSManageRAMCredentialsRole,並為其授權權限原則AliyunKMSManageRAMCredentialsRolePolicy。KMS使用該角色為您管理RAM憑據,完成RAM憑據輪轉等任務。
您可以登入RAM控制台查看服務關聯角色和權限原則的詳細資料,具體操作,請參見查看RAM角色和查看權限原則基本資料。
步驟二:建立RAM憑據
登入Key Management Service控制台,在頂部功能表列選擇地區後,在左側導覽列單擊 。
單擊RAM凭据頁簽,選擇实例ID後,單擊创建凭据。若出現请先授权KMS 访问AK 权限提示,請先完成授權,授權步驟請參見步驟一:授予KMS管理RAM使用者AccessKey的許可權。
配置RAM憑據資料,配置項說明如下。配置完畢後單擊確定。
配置項
說明
选择RAM用户
選擇您要託管憑據的RAM使用者,所選RAM使用者至少需要有一個AccessKey。若沒有,請先建立AccessKey,詳細步驟請參考建立AccessKey。
憑據名稱根據RAM使用者的名稱自動產生,憑據名稱在當前地區內是唯一。
设置凭据值
輸入對應的AccessKey Secret。
長度不超過30720位元組(30KB)。
加密主密钥
選擇用於加密憑據值的密鑰。
重要密鑰和憑據需要屬於同一個KMS執行個體,且密鑰必須為對稱金鑰。關於KMS支援哪些對稱金鑰,請參見密鑰管理類型和密鑰規格。
如果是RAM使用者、RAM角色,需要具備使用加密主要金鑰執行GenerateDataKey操作的許可權。
標籤
憑據的標籤,方便您對憑據進行分類管理。每個標籤由一個索引值對(Key:Value)組成,包含標籤鍵(Key)、標籤值(Value)。
說明標籤鍵和標籤值的格式:最多支援128個字元,可以包含英文大小寫字母、數字、正斜線(/)、反斜線(\)、底線(_)、短劃線(-)、半形句號(.)、加號(+)、等號(=)、半形冒號(:)、字元at(@)、空格。
標籤鍵不能以aliyun或acs:開頭。
每個憑據最多可以設定20個標籤索引值對。
自动轮转
選擇開啟或關閉憑據的周期性自動輪轉。
天数(7天~365天)
僅當开启自动轮转需要設定。
表示輪轉的周期,設定後KMS將定期為您更新憑據值。
描述信息
憑據的描述資訊。
策略配置
憑據的策略配置。詳細介紹,請參見憑據策略概述。
您可以先選擇預設策略,建立憑據後根據業務需要再修改策略。
步驟三:應用程式整合RAM憑據
KMS提供了憑據用戶端、KMS執行個體SDK、阿里雲SDK、KMS Agent調用OpenAPI-GetSecretValue或KMS執行個體API-GetSecretValue(不推薦)介面擷取RAM憑據。您可按照以下進行選擇:
建議您做好錯誤重試機制提升業務穩定性。
KMS提供了多種認證方式,為了更高的安全性,推薦您優先使用ECS執行個體RAM角色或RAM角色。
存取點說明:
共用網關對應的存取點Endpoint:請參見存取點說明。
專屬網關對應的存取點Endpoint:
{執行個體ID}.cryptoservice.kms.aliyuncs.com
。
整合方式 | 使用情境說明 | 支援的網關類型 |
|
| |
應用開發語言需要為Java(Java 8及以上版本)、Go或者Python。 |
| |
應用開發語言需要為Java(Java 6及以上版本)、PHP、Go、Python、.NET(僅C#)、C++、Node.js。 |
| |
|
| |
KMS執行個體SDK(不推薦) | 應用開發語言需要為Java(Java 8及以上版本)、PHP、Go、Python、.NET(僅C#)。 | 專屬網關 |
更多操作
輪轉RAM憑據
登入Key Management Service控制台,在頂部功能表列選擇地區後,在左側導覽列單擊 。
單擊RAM凭据頁簽,選擇实例ID後,定位到要立即輪轉的憑據名稱,單擊操作列的详情。
在憑據詳情頁面配置憑據輪轉策略。
周期性自動輪轉:在頁面右上方單擊设置轮转策略,開啟或關閉周期性自動輪轉,然後單擊確定。
立即輪轉:在頁面右上方單擊立即轮转,在设置轮转策略對話方塊中設定轮转窗口(10分鐘~2天),然後單擊確定。
刪除RAM憑據
您可以選擇計劃刪除憑據和立即刪除憑據兩種方式,刪除不需要的憑據。刪除RAM憑據僅在憑據管家中刪除RAM憑據,不會在RAM中刪除RAM使用者的AccessKey。
刪除憑據前,請確認該憑據已不再使用,否則可能導致您的業務失敗。
登入Key Management Service控制台,在頂部功能表列選擇地區後,在左側導覽列單擊 。
單擊RAM憑據頁簽,選擇執行個體ID後,定位到要刪除的憑據名稱,單擊操作列的計劃刪除憑據。
在计划删除凭据對話方塊中,選擇憑據刪除方式,並單擊確定。
计划删除凭据:設定預刪除周期(7~30天),系統將在預刪除周期結束後刪除憑據。
立即删除凭据:系統將立即刪除憑據。
在預刪除周期內,您可以單擊目標憑據操作列的还原凭据,取消刪除操作。
為憑據配置標籤
憑據的標籤,方便您對憑據進行分類管理。每個標籤由一個索引值對(Key:Value)組成,包含標籤鍵(Key)、標籤值(Value)。
標籤鍵和標籤值的格式:最多支援128個字元,可以包含英文大小寫字母、數字、正斜線(/)、反斜線(\)、底線(_)、短劃線(-)、半形句號(.)、加號(+)、等號(=)、半形冒號(:)、字元at(@)、空格。
標籤鍵不能以aliyun或acs:開頭。
每個憑據最多可以設定20個標籤索引值對。
為單個憑據配置標籤
方式 | 操作 |
方式一:在憑據管理頁面配置標籤 |
|
方式二:在憑據詳情頁面配置標籤 |
|
為多個憑據大量設定標籤
登入Key Management Service控制台,在頂部功能表列選擇地區後,在左側導覽列單擊 。
單擊相應的憑據類型頁簽,選擇实例ID後,在憑據列表中勾選要操作的憑據。
增加標籤:在憑據列表的最下方,單擊增加標籤,輸入多個標籤鍵和標籤值後,單擊確認,然後在變更提示對話方塊中單擊關閉。
刪除標籤:在憑據列表的最下方,單擊刪除標籤,在批量解除綁定標籤對話方塊勾選要解除綁定的標籤,單擊解除綁定標籤,然後在變更提示對話方塊中單擊關閉。
檢測帳號
檢測帳號功能可為您檢測RAM憑據中的RAM使用者在RAM中是否存在,以及RAM使用者的AccessKey ID與憑據中內容是否一致。
登入Key Management Service控制台,在頂部功能表列選擇地區後,在左側導覽列單擊 。
單擊RAM凭据頁簽,選擇实例ID後,定位到目標憑據,單擊操作列的详情。
在版本列表地區,單擊检测账号,驗證完成後,查看驗證結果。