管理及使用RAM憑據
本文中含有需要您注意的重要提示信息,忽略該信息可能對您的業務造成影響,請務必仔細閱讀。
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和AliyunRAMFullAccess授予RAM用戶或RAM角色。具體操作,請參見為RAM用戶授權或為RAM角色授權。
步驟一:授予KMS管理RAM用戶AccessKey的權限
1.創建自定義權限策略
使用RAM管理員登錄RAM控制臺。
在左側導航欄,選擇 。
在權限策略頁面,單擊創建權限策略。
選擇腳本編輯并輸入以下腳本。
{ "Version": "1", "Statement": [ { "Effect": "Allow", "Action": [ "ram:ListAccessKeys", "ram:CreateAccessKey", "ram:DeleteAccessKey", "ram:UpdateAccessKey" ], "Resource": "*" } ] }
單擊繼續編輯基本信息,設置名稱和備注。其中名稱設置為AliyunKMSManagedRAMCrendentialsRolePolicy。
單擊確定。
2.創建RAM角色并授權
使用RAM管理員登錄RAM控制臺。
在左側導航欄,選擇 。
在角色頁面,單擊創建角色。
在創建角色頁面,選擇可信實體類型為阿里云服務,然后單擊下一步。
選擇角色類型為普通服務角色。
輸入角色名稱和備注。其中角色名稱為AliyunKMSManagedRAMCrendentialsRole。
選擇受信服務為密鑰管理服務,單擊完成。
單擊為角色授權,被授權主體會自動填入。
在新增授權面板,選擇自定義策略,然后選中權限策略AliyunKMSManagedRAMCrendentialsRolePolicy,單擊確定,然后單擊完成。
步驟二:創建RAM用戶的AccessKey
訪問密鑰AccessKey(簡稱AK)是阿里云提供給用戶的永久訪問憑據,一組由AccessKey ID和AccessKey Secret組成的密鑰對。
AccessKey ID:用于標識用戶。
AccessKey Secret:是一個用于驗證您擁有該AccessKey ID的密碼。
登錄RAM控制臺。
在左側導航欄,選擇 。
在用戶頁面,單擊目標RAM用戶名稱。
在AccessKey區域,單擊創建AccessKey。
根據界面提示完成安全驗證。
在創建AccessKey對話框,查看AccessKey ID和AccessKey Secret。
您可以單擊下載CSV文件,下載AccessKey信息。單擊復制,復制AccessKey信息。
步驟三:創建RAM憑據
登錄密鑰管理服務控制臺,在頂部菜單欄選擇地域后,在左側導航欄單擊 。
單擊RAM憑據頁簽,選擇實例ID后,單擊創建憑據,完成各項配置后單擊確定。
配置項
說明
選擇RAM用戶
選擇您要托管憑據的RAM用戶,所選RAM用戶需要至少有一個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提供了多種SDK,建議您按照如下優先級順序選擇SDK:
KMS提供了多種認證方式,為了更高的安全性,推薦您優先使用應用接入點(AAP)的ClientKey、ECS實例RAM角色或RAM角色。
優先級 | 業務應用需滿足的條件 | 支持的認證方式 | 接入點(Endpoint) |
優先級1:RAM憑據插件 | 應用開發語言需要為Java(Java 8及以上版本)、Go或者Python,且業務應用使用RAM憑據插件中支持的阿里云SDK。 | 應用接入點(AAP)的ClientKey | 根據Endpoint不同,調用的API不同:
|
ECS實例RAM角色 | KMS服務Endpoint,調用OpenAPI,具體接入點,請參見接入點說明。 | ||
優先級2:憑據客戶端 | 應用開發語言需要為Java(Java 8及以上版本)、Go或者Python。 | 應用接入點(AAP)的ClientKey | 根據Endpoint不同,調用的API不同:
|
| KMS服務Endpoint,調用OpenAPI,具體接入點,請參見接入點說明。 | ||
優先級3:KMS實例SDK | 應用開發語言需要為Java(Java 8及以上版本)、PHP、Go、Python、.NET(僅C#)。 | 應用接入點(AAP)的ClientKey | KMS實例Endpoint:調用實例API。格式為 |
優先級4:阿里云SDK | 應用開發語言需要為Java(Java 6及以上版本)、PHP、Go、Python、.NET(僅C#)、C++、Node.js。 |
| KMS服務Endpoint,調用OpenAPI,具體接入點,請參見接入點說明。 |
(可選)步驟五:監控動態RAM憑據輪轉
功能暫不支持,支持后提供
更多操作
輪轉RAM憑據
登錄密鑰管理服務控制臺,在頂部菜單欄選擇地域后,在左側導航欄單擊 。
單擊RAM憑據頁簽,選擇實例ID后,定位到要立即輪轉的憑據名稱,單擊操作列的詳情。
在憑據詳情頁面配置憑據輪轉策略。
周期性自動輪轉:在頁面右上角單擊設置輪轉策略,開啟或關閉周期性自動輪轉,然后單擊確定。
立即輪轉:在頁面右上角單擊立即輪轉,在設置輪轉策略對話框中設置輪轉窗口(10分鐘~2天),然后單擊確定。
刪除RAM憑據
您可以選擇計劃刪除憑據和立即刪除憑據兩種方式,刪除不需要的憑據。刪除RAM憑據僅在憑據管家中刪除RAM憑據,不會在RAM中刪除RAM用戶的AccessKey。
刪除憑據前,請確認該憑據已不再使用,否則可能導致您的業務失敗。
登錄密鑰管理服務控制臺,在頂部菜單欄選擇地域后,在左側導航欄單擊 。
單擊RAM憑據頁簽,選擇實例ID后,定位到要刪除的憑據名稱,單擊操作列的計劃刪除憑據。
在計劃刪除憑據對話框中,選擇憑據刪除方式,并單擊確定。
計劃刪除憑據:設置預刪除周期(7~30天),系統將在預刪除周期結束后刪除憑據。
立即刪除憑據:系統將立即刪除憑據。
在預刪除周期內,您可以單擊目標憑據操作列的還原憑據,取消刪除操作。
為憑據配置標簽
憑據的標簽,方便您對憑據進行分類管理。每個標簽由一個鍵值對(Key:Value)組成,包含標簽鍵(Key)、標簽值(Value)。
標簽鍵和標簽值的格式:最多支持128個字符,可以包含英文大小寫字母、數字、正斜線(/)、反斜線(\)、下劃線(_)、短劃線(-)、半角句號(.)、加號(+)、等于號(=)、半角冒號(:)、字符at(@)、空格。
標簽鍵不能以aliyun或acs:開頭。
每個憑據最多可以設置20個標簽鍵值對。
為單個憑據配置標簽
方式 | 操作 |
方式一:在憑據管理頁面配置標簽 |
|
方式二:在憑據詳情頁面配置標簽 |
|
為多個憑據批量配置標簽
登錄密鑰管理服務控制臺,在頂部菜單欄選擇地域后,在左側導航欄單擊 。
單擊相應的憑據類型頁簽,選擇實例ID后,在憑據列表中勾選要操作的憑據。
增加標簽:在憑據列表的最下方,單擊增加標簽,輸入多個標簽鍵和標簽值后,單擊確認,然后在變更提示對話框中單擊關閉。
刪除標簽:在憑據列表的最下方,單擊刪除標簽,在批量解綁標簽對話框勾選要解綁的標簽,單擊解綁標簽,然后在變更提示對話框中單擊關閉。
檢測賬號
檢測賬號功能可為您檢測RAM憑據中的RAM用戶在RAM中是否存在,以及RAM用戶的AccessKey ID與憑據中內容是否一致。
登錄密鑰管理服務控制臺,在頂部菜單欄選擇地域后,在左側導航欄單擊 。
單擊RAM憑據頁簽,選擇實例ID后,定位到目標憑據,單擊操作列的詳情。
在版本列表區域,單擊檢測賬號,驗證完成后,查看驗證結果。