調用PutSecretValue介面為通用憑據存入一個新版本的憑據值。
說明 僅通用憑據支援本介面,每個通用憑據最多儲存10個憑據版本,超出時KMS會滾動刪除最早的憑據版本。
預設情況下,新存入的憑據值被標記為ACSCurrent,而ACSCurrent標記的前一個版本被標記為ACSPrevious。您可以通過指定VersionStage參數來覆蓋該預設行為。
此介面用於存入新版本的憑據值,而不能用於修改已有版本的憑據值。存入新版本時需指定版本號碼,KMS按照如下規則進行操作:
- 版本號碼在憑據內不存在:建立新版本並存入憑據值。
- 版本號碼在憑據記憶體在:如果入參中的憑據值和憑據內該版本號碼對應的憑據值相同,則請求會被忽略,並且返回成功(請求是等冪的),不相同時則請求會被拒絕,且返回失敗。
本文將提供一個樣本,為憑據名稱是secret001的憑據存入一個新版本的憑據值,新憑據版本號碼VersionId為v3、憑據值SecretData為importantdata。
調試
您可以在OpenAPI Explorer中直接運行該介面,免去您計算簽名的困擾。運行成功後,OpenAPI Explorer可以自動產生SDK程式碼範例。
請求參數
|
名稱 |
類型 |
是否必選 |
樣本值 |
描述 |
| Action | String | 是 | PutSecretValue | 要執行的操作。取值:PutSecretValue。 |
| VersionId | String | 是 | v3 | 憑據的版本號碼,在該憑據內唯一。 |
| SecretName | String | 是 | secret001 | 憑據名稱或憑據資源名稱(ARN)。 說明 訪問其他阿里雲帳號下的憑據時,必須輸入憑據ARN。憑據ARN的格式為 acs:kms:${region}:${account}:secret/${secret-name}。 |
| SecretData | String | 是 | importantdata | 憑據值。加密後存入指定的新版本中。 |
| SecretDataType | String | 否 | text | 憑據實值型別。取值:
|
| VersionStages | String | 否 | ["ACSCurrent","ACSNext"] | 憑據版本在存入時需要被同時標記的版本狀態。如果您不指定此參數,KMS預設為新版本戳記ACSCurrent。 |
關於公用請求參數的詳情,請參見公用參數。
返回資料
名稱 |
類型 |
樣本值 |
描述 |
| SecretName | String | secret001 | 憑據名稱。 |
| VersionId | String | v3 | 憑據的版本號碼。 |
| RequestId | String | f94ec9d3-2d10-4922-9a5c-5dcd5ebcb5e8 | 本次調用請求的ID,是由阿里雲為該請求產生的唯一識別碼,可用於排查和定位問題。 |
| VersionStages | Array of String | { "VersionStage": [ "ACSCurrent", "ACSNext" ] } | 憑據的版本狀態。 |
樣本
請求樣本
http(s)://[Endpoint]/?Action=PutSecretValue
&VersionId=v3
&SecretName=secret001
&SecretData=importantdata
&SecretDataType=text
&VersionStages=["ACSCurrent","ACSNext"]
&公用請求參數
正常返回樣本
XML格式
HTTP/1.1 200 OK
Content-Type:application/xml
<PutSecretValueResponse>
<SecretName>secret001</SecretName>
<VersionId>v3</VersionId>
<RequestId>f94ec9d3-2d10-4922-9a5c-5dcd5ebcb5e8</RequestId>
<VersionStages>{ "VersionStage": [ "ACSCurrent", "ACSNext" ] }</VersionStages>
</PutSecretValueResponse>
JSON格式
HTTP/1.1 200 OK
Content-Type:application/json
{
"SecretName" : "secret001",
"VersionId" : "v3",
"RequestId" : "f94ec9d3-2d10-4922-9a5c-5dcd5ebcb5e8",
"VersionStages" : [ "{ \"VersionStage\": [ \"ACSCurrent\", \"ACSNext\" ] }" ]
}
錯誤碼
訪問錯誤中心查看更多錯誤碼。