全部产品
Search
文档中心

密钥管理服务:PutSecretValue

更新时间:Apr 18, 2024

调用PutSecretValue接口为通用凭据存入一个新版本的凭据值。

说明 仅通用凭据支持本接口,每个通用凭据最多保存10个凭据版本,超出时KMS会滚动删除最早的凭据版本。

默认情况下,新存入的凭据值被标记为ACSCurrent,而ACSCurrent标记的前一个版本被标记为ACSPrevious。您可以通过指定VersionStage参数来覆盖该默认行为。

此接口用于存入新版本的凭据值,而不能用于修改已有版本的凭据值。存入新版本时需指定版本号,KMS按照如下规则进行操作:

  • 版本号在凭据内不存在:创建新版本并存入凭据值。
  • 版本号在凭据内存在:如果入参中的凭据值和凭据内该版本号对应的凭据值相同,则请求会被忽略,并且返回成功(请求是幂等的),不相同时则请求会被拒绝,且返回失败。

本文将提供一个示例,为凭据名称是secret001的凭据存入一个新版本的凭据值,新凭据版本号VersionIdv3、凭据值SecretDataimportantdata

调试

您可以在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

凭据值类型。取值:

  • text(默认值)
  • binary
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\" ] }" ]
}

错误码

访问错误中心查看更多错误码。