通用憑據(Generic Secret)是KMS支援的基礎類型憑據,您可以使用通用憑據儲存帳號口令、存取金鑰、OAuth密鑰和Token等任意的敏感性資料,同時通用憑據支援多個憑據版本便於您更新憑據值,解決在代碼中寫入程式碼通用憑據帶來的資料泄露風險。本文介紹如何管理及使用通用憑據。
通用憑據輪轉
通用憑據不支援在KMS直接配置周期性輪轉,但您可以通過Function Compute配置周期性輪轉。具體操作,請參見使用Function Compute輪轉普通憑據。如果您希望立即輪轉憑據,可以通過在控制台或OpenAPI(PutSecretValue)存入新的憑據版本實現立即輪轉。
每個通用憑據最多儲存10個憑據版本,超出時KMS會滾動刪除最早的憑據版本。
前提條件
已購買並啟用KMS執行個體。具體操作,請參見購買和啟用KMS執行個體。
已在KMS執行個體中建立用於加密憑據的對稱金鑰。具體操作,請參見建立密鑰。
步驟一:建立通用憑據
建立通用憑據時,KMS會為該憑據版本內建版本狀態,即ACSCurrent。
登入Key Management Service控制台,在頂部功能表列選擇地區後,在左側導覽列單擊。
單擊通用凭据頁簽,選擇实例ID後,單擊创建凭据,完成各項配置後單擊確定。
配置項
說明
凭据名称
自訂的憑據名稱。憑據名稱在當前地區內唯一。
设置凭据值
根據您要託管的敏感性資料類型,選擇憑據鍵/值或純文字。
長度不超過30720位元組(30KB)。
初始版本号
憑據的初始版本號碼。預設為v1,也支援自訂版本號碼。
加密主密钥
選擇用於加密憑據值的密鑰。
重要密鑰和憑據需要屬於同一個KMS執行個體,且密鑰必須為對稱金鑰。關於KMS支援哪些對稱金鑰,請參見密鑰管理類型和密鑰規格。
如果是RAM使用者、RAM角色,需要具備使用加密主要金鑰執行GenerateDataKey操作的許可權。
標籤
憑據的標籤,方便您對憑據進行分類管理。每個標籤由一個索引值對(Key:Value)組成,包含標籤鍵(Key)、標籤值(Value)。
說明標籤鍵和標籤值的格式:最多支援128個字元,可以包含英文大小寫字母、數字、正斜線(/)、反斜線(\)、底線(_)、短劃線(-)、半形句號(.)、加號(+)、等號(=)、半形冒號(:)、字元at(@)、空格。
標籤鍵不能以aliyun或acs:開頭。
每個憑據最多可以設定20個標籤索引值對。
描述信息
憑據的描述資訊。
憑據的策略配置。詳細介紹,請參見憑據策略概述。
您可以先選擇預設策略,建立憑據後根據業務需要再修改策略。
步驟二:應用程式整合通用憑據
KMS提供了阿里雲SDK、憑據用戶端、KMS Agent、KMS執行個體SDK調用OpenAPI-GetSecretValue或KMS執行個體API-GetSecretValue(不推薦)介面擷取通用憑據值,建議您按照如下優先順序順序選擇合適的整合方式:
建議您做好錯誤重試機制提升業務穩定性。
KMS提供了多種認證方式,為了更高的安全性,推薦您優先使用ECS執行個體RAM角色或RAM角色。
存取點說明:
共用網關對應的存取點Endpoint:請參見存取點說明。
專屬網關對應的存取點Endpoint:
{執行個體ID}.cryptoservice.kms.aliyuncs.com。
優先順序 | 使用情境說明 | 支援的網關類型 |
優先順序1:憑據用戶端 | 應用開發語言需要為Java(Java 8及以上版本)、Go或者Python。 |
|
優先順序2:阿里雲SDK | 應用開發語言需要為Java(Java 6及以上版本)、PHP、Go、Python、.NET(僅C#)、C++、Node.js。 |
|
優先順序3:KMS Agent |
|
|
優先順序4:KMS執行個體SDK(不推薦) | 應用開發語言需要為Java(Java 8及以上版本)、PHP、Go、Python、.NET(僅C#)。 | 專屬網關 |
相關操作
輪轉通用憑據
通用憑據不支援在建立時設定輪轉資訊,您可以通過在控制台或OpenAPI(PutSecretValue)存入新的憑據版本實現立即輪轉。
登入Key Management Service控制台,在頂部功能表列選擇地區後,在左側導覽列單擊。
單擊通用凭据頁簽,選擇实例ID後,定位到目標憑據,單擊操作列的详情。
在憑據詳情頁面的版本列表地區,單擊存入凭据值。
在存入凭据值對話方塊中,輸入版本号、设置凭据值,然後單擊確定。
重要成功存入新的憑據版本後,該憑據會立即輪轉,即KMS的擷取憑據值介面預設返回該最新版本的憑據值。
刪除通用憑據
刪除前請確認該憑據已不再使用。您可以選擇計劃刪除憑據和立即刪除憑據兩種方式,刪除不需要的通用憑據。
刪除憑據前,請確認該憑據已不再使用,否則可能導致您的業務失敗。
登入Key Management Service控制台,在頂部功能表列選擇地區資訊後,在左側導覽列單擊凭据管理頁面。
單擊通用凭据頁簽,選擇实例ID後,定位到目標憑據,單擊操作列的计划删除凭据。
在计划删除凭据對話方塊中,選擇憑據刪除方式,並單擊確定。
计划删除凭据:設定預刪除周期(7~30天),系統將在預刪除周期結束後刪除憑據。
立即删除凭据:系統將立即刪除憑據。
在預刪除周期內,您可以單擊目標憑據操作列的還原憑據,取消刪除操作。
為憑據配置標籤
憑據的標籤,方便您對憑據進行分類管理。每個標籤由一個索引值對(Key:Value)組成,包含標籤鍵(Key)、標籤值(Value)。
標籤鍵和標籤值的格式:最多支援128個字元,可以包含英文大小寫字母、數字、正斜線(/)、反斜線(\)、底線(_)、短劃線(-)、半形句號(.)、加號(+)、等號(=)、半形冒號(:)、字元at(@)、空格。
標籤鍵不能以aliyun或acs:開頭。
每個憑據最多可以設定20個標籤索引值對。
為單個憑據配置標籤
方式 | 操作 |
方式一:在憑據管理頁面配置標籤 |
|
方式二:在憑據詳情頁面配置標籤 |
|
為多個憑據大量設定標籤
登入Key Management Service控制台,在頂部功能表列選擇地區後,在左側導覽列單擊。
單擊相應的憑據類型頁簽,選擇实例ID後,在憑據列表中勾選要操作的憑據。
增加標籤:在憑據列表的最下方,單擊增加标签,輸入多個標籤鍵和標籤值後,單擊確認,然後在變更提示對話方塊中單擊關閉。
刪除標籤:在憑據列表的最下方,單擊删除标签,在批量解绑标签對話方塊勾選要解除綁定的標籤,單擊取消,然後在變更提示對話方塊中單擊關閉。