创建凭据版本 - CreateSecretVersion
功能介绍
在指定的凭据中,创建一个新的凭据版本,用于加密保管新的凭据值。默认情况下,新创建的凭据版本被标记为SYSCURRENT状态,而SYSCURRENT标记的前一个凭据版本被标记为SYSPREVIOUS状态。您可以通过指定VersionStage参数来覆盖默认行为。
接口约束
- 
     
凭据管理服务console控制台仅使用secret_string字段。如果您想要添加二进制类型凭据到secret_binary字段中保存,必须使用SDK或API的方式。
 - 
     
凭据管理服务的每个凭据中最多可支持20个版本。
 - 
     
只能对处于ENABLED状态的凭据添加新的版本。
 - 
     
每次存入新的凭据值时,凭据版本号按照为v1,v2,v3...的模式自动增加。
 
调用方法
请参见如何调用API。
授权信息
账号具备所有API的调用权限,如果使用账号下的IAM用户调用当前API,该IAM用户需具备调用API所需的权限。
- 如果使用角色与策略授权,具体权限要求请参见权限和授权项。
 - 如果使用身份策略授权,需具备如下身份策略权限。 
     
授权项
访问级别
资源类型(*为必须)
条件键
别名
依赖的授权项
csms:secret:createVersion
Write
secretName *
- 
            
csms:Type
 - 
            
g:EnterpriseProjectId
 - 
            
g:ResourceTag/<tag-key>
 
- csms:secretVersion:create
 
kms:cmk:createDataKey
 - 
            
 
URI
POST /v1/{project_id}/secrets/{secret_name}/versions
| 
         参数  | 
       
         是否必选  | 
       
         参数类型  | 
       
         描述  | 
      
|---|---|---|---|
| 
         project_id  | 
       
         是  | 
       
         String  | 
       
         项目ID。  | 
      
| 
         secret_name  | 
       
         是  | 
       
         String  | 
       
         凭据名称。  | 
      
请求参数
| 
         参数  | 
       
         是否必选  | 
       
         参数类型  | 
       
         描述  | 
      
|---|---|---|---|
| 
         X-Auth-Token  | 
       
         是  | 
       
         String  | 
       
         用户Token。 通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。  | 
      
| 
         参数  | 
       
         是否必选  | 
       
         参数类型  | 
       
         描述  | 
      
|---|---|---|---|
| 
         secret_binary  | 
       
         否  | 
       
         String  | 
       
         新创建凭据的凭据值,将其加密后,存入初始版本中。 类型:base64编码的二进制数据对象。 约束:secret_binary和secret_string必须且只能设置一个,最大32K。  | 
      
| 
         secret_string  | 
       
         否  | 
       
         String  | 
       
         新创建凭据的凭据值,将其加密后,存入初始版本中。 约束:secret_binary和 secret_string必须且只能设置一个,最大32K。  | 
      
| 
         version_stages  | 
       
         否  | 
       
         Array of strings  | 
       
         凭据版本在存入时需要被同时标记的版本状态。如果您不指定此参数,凭据管家默认为新版本标记SYSCURRENT 约束:数组大小:最小1,最大12。stage长度:最小1字节,最大64字节。  | 
      
| 
         expire_time  | 
       
         否  | 
       
         Long  | 
       
         凭据版本过期时间,时间戳,即从1970年1月1日至该时间的总秒数。默认为空,凭据订阅“版本过期”事件类型时,有效期判断所依据的值。  | 
      
响应参数
状态码:200
| 
         参数  | 
       
         参数类型  | 
       
         描述  | 
      
|---|---|---|
| 
         version_metadata  | 
       
         VersionMetadata object  | 
       
         凭据版本被标记的状态。  | 
      
| 
         参数  | 
       
         参数类型  | 
       
         描述  | 
      
|---|---|---|
| 
         id  | 
       
         String  | 
       
         凭据的版本号标识符,凭据对象下唯一。  | 
      
| 
         create_time  | 
       
         Long  | 
       
         凭据版本创建时间,时间戳,即从1970年1月1日至该时间的总秒数。  | 
      
| 
         expire_time  | 
       
         Long  | 
       
         凭据版本过期时间,时间戳,即从1970年1月1日至该时间的总秒数。默认为空,凭据订阅“版本过期”事件类型时,有效期判断所依据的值。  | 
      
| 
         kms_key_id  | 
       
         String  | 
       
         加密版本凭据值的KMS主密钥ID。  | 
      
| 
         secret_name  | 
       
         String  | 
       
         凭据名称。  | 
      
| 
         version_stages  | 
       
         Array of strings  | 
       
         凭据版本被标记的状态列表。每个版本标签对于凭据对象下版本是唯一存在的,如果创建版本时,指定的是同一凭据对象下的一个已经标记在其他版本上的状态,该标签将自动从其他版本上删除,并附加到此版本上。 如果未指定version_stage的值,则凭据管理服务会自动移动临时标签SYSCURRENT到此新版本。  | 
      
状态码:400
| 
         参数  | 
       
         参数类型  | 
       
         描述  | 
      
|---|---|---|
| 
         error_code  | 
       
         String  | 
       
         错误码  | 
      
| 
         error_msg  | 
       
         String  | 
       
         错误描述  | 
      
状态码:401
| 
         参数  | 
       
         参数类型  | 
       
         描述  | 
      
|---|---|---|
| 
         error_code  | 
       
         String  | 
       
         错误码  | 
      
| 
         error_msg  | 
       
         String  | 
       
         错误描述  | 
      
状态码:403
| 
         参数  | 
       
         参数类型  | 
       
         描述  | 
      
|---|---|---|
| 
         error_code  | 
       
         String  | 
       
         错误码  | 
      
| 
         error_msg  | 
       
         String  | 
       
         错误描述  | 
      
状态码:404
| 
         参数  | 
       
         参数类型  | 
       
         描述  | 
      
|---|---|---|
| 
         error_code  | 
       
         String  | 
       
         错误码  | 
      
| 
         error_msg  | 
       
         String  | 
       
         错误描述  | 
      
状态码:500
| 
         参数  | 
       
         参数类型  | 
       
         描述  | 
      
|---|---|---|
| 
         error_code  | 
       
         String  | 
       
         错误码  | 
      
| 
         error_msg  | 
       
         String  | 
       
         错误描述  | 
      
状态码:502
| 
         参数  | 
       
         参数类型  | 
       
         描述  | 
      
|---|---|---|
| 
         error_code  | 
       
         String  | 
       
         错误码  | 
      
| 
         error_msg  | 
       
         String  | 
       
         错误描述  | 
      
状态码:504
| 
         参数  | 
       
         参数类型  | 
       
         描述  | 
      
|---|---|---|
| 
         error_code  | 
       
         String  | 
       
         错误码  | 
      
| 
         error_msg  | 
       
         String  | 
       
         错误描述  | 
      
请求示例
创建凭据版本,凭据值为secret_string。
{
  "secret_string" : "secret_string"
}
  响应示例
状态码:200
请求已成功
{
  "version_metadata" : {
    "id" : "v1",
    "kms_key_id" : "b168fe00ff56492495a7d22974df2d0b",
    "create_time" : 1581507580000,
    "secret_name" : "secret-name-demo",
    "version_stages" : [ "SYSCURRENT" ]
  }
}
  状态码
| 
         状态码  | 
       
         描述  | 
      
|---|---|
| 
         200  | 
       
         请求已成功  | 
      
| 
         400  | 
       
         请求参数有误  | 
      
| 
         401  | 
       
         被请求的页面需要用户名和密码  | 
      
| 
         403  | 
       
         认证失败  | 
      
| 
         404  | 
       
         资源不存在,资源未找到  | 
      
| 
         500  | 
       
         服务内部错误  | 
      
| 
         502  | 
       
         请求未完成。服务器从上游服务器收到一个无效的响应  | 
      
| 
         504  | 
       
         网关超时  | 
      
错误码
请参见错误码。