文档

CreateSecret

更新时间:

调用CreateSecret接口创建命名空间中的Secret实例。

调试

您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。

请求头

该接口使用公共请求头,无特殊请求头。更多信息,请参见公共请求和返回头

请求语法

POST /pop/v1/sam/secret/secret HTTP/1.1

请求参数

名称

类型

位置

是否必选

示例值

描述

NamespaceId String Query cn-beijing:test

Secret实例所在命名空间ID。如果所在命名空间为默认命名空间,则只需填写RegionId,例如cn-beijing

SecretName String Query registry-auth-acree

Secret实例名称。允许数字、字母和下划线(_)组合,仅允许以字母开头。

SecretType String Query kubernetes.io/dockerconfigjson

当前支持的Secret实例类型。取值说明如下:

  • kubernetes.io/dockerconfigjson:存储镜像仓库用户名和密码的保密字典,用于部署时拉取镜像鉴权。
SecretData Object Query

Secret数据。

SecretData String Query {".dockerconfigjson":"eyJhdXRocyI6eyJyZWdpc3RyeS12cGMuY24tYmVpamluZy5hbGl5dW5jcy5jb20iOnsidXNlcm5hbWUiOiJ1c2VybmFtZSIsInBhc3N3b3JkIjoicGFzc3dvcmQiLCJhdXRoIjoiZFhObGNtNWhiV1U2Y0dGemMzZHZjbVE9In0sInJlZ2lzdHJ5LmNuLWJlaWppbmcuYWxpeXVuY3MuY29tIjp7InVzZXJuYW1lIjoidXNlcm5hbWUiLCJwYXNzd29yZCI6InBhc3N3b3JkIiwiYXV0aCI6ImRYTmxjbTVoYldVNmNHRnpjM2R2Y21RPSJ9fX0="}

Secret键值对数据,为必填项。格式如下:

{"Data":"{"k1":"v1", "k2":"v2"}"}

k表示键,v表示值。关于配置项的更多信息,请参见管理和使用保密字典

示例:使用用户名密码,跨账号内网拉取容器镜像服务ACR的镜像

  • 请同时填写公网与内网域名。
  • 请同时填写usernamepasswordauth字段,避免鉴权失败。auth字段格式base64Encode($username:$password)

字段值默认格式如下。

SecretData[".dockerconfigjson"]=base64Encode(
{
  "auths": {
    "registry-vpc.cn-beijing.aliyuncs.com": {  // $内网域名
      "username": "username",
      "password": "password",
      "auth": "dXNlcm5hbWU6cGFzc3dvcmQ="
    },
    "registry.cn-beijing.aliyuncs.com": {     // $公网域名
      "username": "username",                 // $用户名
      "password": "password",                 // $密码
      "auth": "dXNlcm5hbWU6cGFzc3dvcmQ="      // base64Encode($用户名:$密码)
    }
  }
} )

返回数据

名称

类型

示例值

描述

RequestId String 91F93257-7A4A-4BD3-9A7E-2F6EAE6D****

请求ID。

Message String success

调用结果的附加信息。

TraceId String 0a98a02315955564772843261e****

调用链ID,用于精确查询调用信息。

Data Object

返回结果。

SecretId Long 16

创建成功的Secret实例ID。

ErrorCode String

错误码。取值说明如下:

  • 请求成功:不返回ErrorCode字段。
  • 请求失败:返回ErrorCode字段。具体信息,请参见本文的错误码列表。
Code String 200

接口状态或POP错误码。取值说明如下:

  • 2xx:成功。
  • 3xx:重定向。
  • 4xx:请求错误。
  • 5xx:服务器错误。
Success Boolean true

创建Secret实例是否成功。取值说明如下:

  • true:创建成功。
  • false:创建失败。

示例

请求示例

POST /pop/v1/sam/secret/secret?NamespaceId=cn-beijing:test&SecretName=registry-auth-acree&SecretType=kubernetes.io/dockerconfigjson HTTP/1.1
Host:sae.aliyuncs.com
Content-Type:application/json

{
  "SecretData" : "{\".dockerconfigjson\":\"eyJhdXRocyI6eyJyZWdpc3RyeS12cGMuY24tYmVpamluZy5hbGl5dW5jcy5jb20iOnsidXNlcm5hbWUiOiJ1c2VybmFtZSIsInBhc3N3b3JkIjoicGFzc3dvcmQiLCJhdXRoIjoiZFhObGNtNWhiV1U2Y0dGemMzZHZjbVE9In0sInJlZ2lzdHJ5LmNuLWJlaWppbmcuYWxpeXVuY3MuY29tIjp7InVzZXJuYW1lIjoidXNlcm5hbWUiLCJwYXNzd29yZCI6InBhc3N3b3JkIiwiYXV0aCI6ImRYTmxjbTVoYldVNmNHRnpjM2R2Y21RPSJ9fX0=\"}"
}

正常返回示例

XML格式

HTTP/1.1 200 OK
Content-Type:application/xml

<CreateSecretResponse>
    <RequestId>91F93257-7A4A-4BD3-9A7E-2F6EAE6D****</RequestId>
    <Message>success</Message>
    <TraceId>0a98a02315955564772843261e****</TraceId>
    <Data>
        <SecretId>16</SecretId>
    </Data>
    <Code>200</Code>
    <Success>true</Success>
</CreateSecretResponse>

JSON格式

HTTP/1.1 200 OK
Content-Type:application/json

{
  "RequestId" : "91F93257-7A4A-4BD3-9A7E-2F6EAE6D****",
  "Message" : "success",
  "TraceId" : "0a98a02315955564772843261e****",
  "Data" : {
    "SecretId" : 16
  },
  "Code" : "200",
  "Success" : true
}

错误码

HttpCode

错误码

错误信息

描述

400 InvalidParameter.NotEmpty You must specify the parameter %s. 不合法的参数:%s不能为空。
400 InvalidParameter.Obviously The specified parameter is invalid {%s}. 不合法的参数{%s}。
400 InvalidParameter.WithMessage The parameter is invalid {%s}: %s 不合法的参数{%s}:%s。
400 SecretNameConflict.AlreadyExist The specified SecretName [%s] already exist in this namespace. 指定的保密字典名称已经存在与当前命名空间中。
400 QuotaExceeded.SecretInNamespace The specified secret exceeded quota [%s]. 超过保密字典上限 [%s]。
400 QuotaExceeded.SecretDataKey The specified key in SecretData exceeded quota [%s]. 保密字典字段数量超过上限 [%s].
400 InvalidSecretType.NotAvailable The specified SecretType [%s] is not supported. 指定的保密字典类型不支持。
400 InvalidSecretDataKey.NotFound The specified Key [%s] does not exist in the specified Secret [%s]. 指定的保密字典Key不存在于当前保密字典[%s]中
404 InvalidNamespaceId.NotFound The specified NamespaceId does not exist. 指定的NamespaceId不存在。
500 OperationFailed.RPCError Internal RPC request processing error. 内部RPC请求处理报错。

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

  • 本页导读 (1)