文档

CreateSecret - CreateSecret

更新时间:

创建命名空间中的Secret实例。

调试

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

授权信息

下表是API对应的授权信息,可以在RAM权限策略语句的Action元素中使用,用来给RAM用户或RAM角色授予调用此API的权限。具体说明如下:

  • 操作:是指具体的权限点。
  • 访问级别:是指每个操作的访问级别,取值为写入(Write)、读取(Read)或列出(List)。
  • 资源类型:是指操作中支持授权的资源类型。具体说明如下:
    • 对于必选的资源类型,用背景高亮的方式表示。
    • 对于不支持资源级授权的操作,用全部资源表示。
  • 条件关键字:是指云产品自身定义的条件关键字。
  • 关联操作:是指成功执行操作所需要的其他权限。操作者必须同时具备关联操作的权限,操作才能成功。
操作访问级别资源类型条件关键字关联操作
sae:CreateSecret
  • 全部资源
    *

请求语法

POST /pop/v1/sam/secret/secret

请求参数

名称类型必填描述示例值
NamespaceIdstring

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

cn-beijing:test
SecretNamestring

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

registry-auth-acree
SecretTypestring

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

  • kubernetes.io/dockerconfigjson:存储镜像仓库用户名和密码的保密字典,用于部署时拉取镜像鉴权。
枚举值:
  • Opaque
  • kubernetes.io/dockerconfigjson
  • kubernetes.io/tls
kubernetes.io/dockerconfigjson
SecretDataobject

Secret 数据。

SecretDatastring

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

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

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

{".dockerconfigjson":"eyJhdXRocyI6eyJyZWdpc3RyeS12cGMuY24tYmVpamluZy5hbGl5dW5jcy5jb20iOnsidXNlcm5hbWUiOiJ1c2VybmFtZSIsInBhc3N3b3JkIjoicGFzc3dvcmQiLCJhdXRoIjoiZFhObGNtNWhiV1U2Y0dGemMzZHZjbVE9In0sInJlZ2lzdHJ5LmNuLWJlaWppbmcuYWxpeXVuY3MuY29tIjp7InVzZXJuYW1lIjoidXNlcm5hbWUiLCJwYXNzd29yZCI6InBhc3N3b3JkIiwiYXV0aCI6ImRYTmxjbTVoYldVNmNHRnpjM2R2Y21RPSJ9fX0="}

示例:使用用户名密码,跨账号内网拉取容器镜像服务 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($用户名:$密码)
    }
  }
} )

返回参数

名称类型描述示例值
object

返回数据。

RequestIdstring

请求 ID。

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

调用结果的附加信息。

success
TraceIdstring

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

0a98a02315955564772843261e****
Dataobject

返回结果。

SecretIdlong

创建成功的 Secret 实例 ID。

16
ErrorCodestring

错误码。取值说明如下:

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

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

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

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

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

示例

正常返回示例

JSON格式

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

错误码

HTTP status code错误码错误信息描述
400InvalidParameter.NotEmptyYou must specify the parameter %s.不合法的参数:%s不能为空。
400InvalidParameter.ObviouslyThe specified parameter is invalid {%s}.不合法的参数{%s}。
400InvalidParameter.WithMessageThe parameter is invalid {%s}: %s不合法的参数{%s}:%s。
400SecretNameConflict.AlreadyExistThe specified SecretName [%s] already exist in this namespace.指定的保密字典名称已经存在与当前命名空间中。
400QuotaExceeded.SecretInNamespaceThe specified secret exceeded quota [%s].超过保密字典上限 [%s]。
400QuotaExceeded.SecretDataKeyThe specified key in SecretData exceeded quota [%s].保密字典字段数量超过上限 [%s].
400InvalidSecretType.NotAvailableThe specified SecretType [%s] is not supported.指定的保密字典类型不支持。
400InvalidSecretDataKey.NotFoundThe specified Key [%s] does not exist in the specified Secret [%s].指定的保密字典Key不存在于当前保密字典[%s]中
404InvalidNamespaceId.NotFoundThe specified NamespaceId does not exist.指定的NamespaceId不存在。
500OperationFailed.RPCErrorInternal RPC request processing error.内部RPC请求处理报错。

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

变更历史

变更时间变更内容概要操作
2023-05-24OpenAPI 错误码发生变更查看变更详情