调用GetSecretValue接口获取凭据值。
如果不指定版本号或版本状态,则KMS默认返回被标记为ACSCurrent的版本凭据值。
如果凭据使用了用户指定的密钥来保护凭据值,则需要调用者同时具备相应主密钥的kms:Decrypt权限。
本文将提供一个示例,获取一个名为secret001凭据的凭据值,返回结果显示凭据值SecretData为testdata1。
调试
您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。
请求参数
| 名称 | 类型 | 是否必选 | 示例值 | 描述 | 
| Action | String | 是 | GetSecretValue | 要执行的操作。取值:GetSecretValue。 | 
| SecretName | String | 是 | secret001 | 凭据名称或凭据资源名称(ARN)。 说明 访问其他阿里云账号下的凭据时,必须输入凭据ARN。凭据ARN的格式为 acs:kms:${region}:${account}:secret/${secret-name}。 | 
| VersionStage | String | 否 | ACSCurrent | 版本状态。默认值:ACSCurrent。 输入该参数时返回指定版本状态的凭据值,不输入该参数时返回ACSCurrent版本状态的凭据值。 说明 RDS凭据、PolarDB凭据、Redis/Tair凭据、RAM凭据和ECS凭据只能获取ACSPrevious和ACSCurrent对应版本的凭据值。 | 
| VersionId | String | 否 | v1 | 版本号。 说明 RDS凭据、PolarDB凭据、Redis/Tair凭据、RAM凭据和ECS凭据不支持指定VersionId,设置该参数将被忽略。 | 
| FetchExtendedConfig | Boolean | 否 | true | 是否获取凭据的拓展配置。取值: 
 说明 通用凭据不支持拓展配置,设置该参数将被忽略。 | 
| DryRun | String | 否 | false | 是否开启DryRun模式。 
 DryRun模式用于测试API调用,验证您是否具有相应资源的权限,以及请求参数是否配置正确。DryRun模式开启后,KMS会始终返回失败并提示失败原因。失败原因包含如下: 
 | 
关于公共请求参数的详情,请参见公共参数。
返回数据
| 名称 | 类型 | 示例值 | 描述 | 
| SecretDataType | String | binary | 凭据值类型。取值: 
 | 
| CreateTime | String | 2024-02-21T15:39:26Z | 创建凭据的时间。 | 
| VersionId | String | v1 | 凭据的版本号。 | 
| NextRotationDate | String | 2024-07-06T18:22:03Z | 下一次轮转的时间。 说明 当自动轮转开启时,返回该参数。 | 
| SecretData | String | testdata1 | 凭据值。KMS将存储的密文凭据值进行解密后返回该参数。 
 | 
| RotationInterval | String | 604800s | 凭据自动轮转的周期。 格式为 说明 当自动轮转开启时,返回该参数。 | 
| ExtendedConfig | String | {\"SecretSubType\":\"SingleUser\", \"DBInstanceId\":\"rm-uf667446pc955****\", \"CustomData\":{} } | 凭据的拓展配置。 说明 当FetchExtendedConfig取值为true时,仅RDS凭据、PolarDB凭据、Redis/Tair凭据、RAM凭据或ECS凭据返回该参数。 | 
| LastRotationDate | String | 2023-07-05T08:22:03Z | 最近一次轮转的时间。 说明 当凭据发生过轮转时返回该参数。 | 
| RequestId | String | 6a3e9c36-1150-4881-84d3-eb8672fcafad | 本次调用请求的ID,是由阿里云为该请求生成的唯一标识符,可用于排查和定位问题。 | 
| SecretName | String | secret001 | 凭据名称。 | 
| AutomaticRotation | String | Enabled | 是否开启了自动轮转。取值: 
 说明 仅RDS凭据、PolarDB凭据、Redis/Tair凭据、RAM凭据或ECS凭据返回该参数。 | 
| SecretType | String | Generic | 凭据类型。取值: 
 | 
| VersionStages | Array of String | { "VersionStage": [ "ACSCurrent" ] } | 凭据版本的状态标记。 | 
示例
请求示例
http(s)://[Endpoint]/?Action=GetSecretValue
&SecretName=secret001
&VersionStage=ACSCurrent
&VersionId=v1
&FetchExtendedConfig=true
&DryRun=false
&公共请求参数正常返回示例
XML格式
HTTP/1.1 200 OK
Content-Type:application/xml
<GetSecretValueResponse>
    <SecretDataType>binary</SecretDataType>
    <CreateTime>2024-02-21T15:39:26Z</CreateTime>
    <VersionId>v1</VersionId>
    <NextRotationDate>2024-07-06T18:22:03Z</NextRotationDate>
    <SecretData>testdata1</SecretData>
    <RotationInterval>604800s</RotationInterval>
    <ExtendedConfig>{\"SecretSubType\":\"SingleUser\", \"DBInstanceId\":\"rm-uf667446pc955****\",  \"CustomData\":{} }</ExtendedConfig>
    <LastRotationDate>2023-07-05T08:22:03Z</LastRotationDate>
    <RequestId>6a3e9c36-1150-4881-84d3-eb8672fcafad</RequestId>
    <SecretName>secret001</SecretName>
    <AutomaticRotation>Enabled</AutomaticRotation>
    <SecretType>Generic</SecretType>
    <VersionStages>{ "VersionStage": [ 	"ACSCurrent" 	] }</VersionStages>
</GetSecretValueResponse>JSON格式
HTTP/1.1 200 OK
Content-Type:application/json
{
  "SecretDataType" : "binary",
  "CreateTime" : "2024-02-21T15:39:26Z",
  "VersionId" : "v1",
  "NextRotationDate" : "2024-07-06T18:22:03Z",
  "SecretData" : "testdata1",
  "RotationInterval" : "604800s",
  "ExtendedConfig" : "{\\\"SecretSubType\\\":\\\"SingleUser\\\", \\\"DBInstanceId\\\":\\\"rm-uf667446pc955****\\\",  \\\"CustomData\\\":{} }",
  "LastRotationDate" : "2023-07-05T08:22:03Z",
  "RequestId" : "6a3e9c36-1150-4881-84d3-eb8672fcafad",
  "SecretName" : "secret001",
  "AutomaticRotation" : "Enabled",
  "SecretType" : "Generic",
  "VersionStages" : [ "{ \"VersionStage\": [ \t\"ACSCurrent\" \t] }" ]
}错误码
| HttpCode | 错误码 | 错误信息 | 描述 | 
| 403 | Forbidden.DKMSInstanceStateInvalid | The DKMS instance state is invalid. | 您的专属KMS状态为无效状态。 | 
| 403 | Forbidden.DKMSInstanceNotFound | The specified DKMS Instance is not found. | 您指定的专属kms实例未找到。 | 
| 404 | Forbidden.KeyNotFound | The specified Key is not found. | 指定的密钥不存在。 | 
| 404 | Forbidden.ResourceNotFound | Resource not found. | 资源找不到 | 
访问错误中心查看更多错误码。