创建命名空间中的Secret实例。
调试
您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。
授权信息
下表是API对应的授权信息,可以在RAM权限策略语句的Action
元素中使用,用来给RAM用户或RAM角色授予调用此API的权限。具体说明如下:
- 操作:是指具体的权限点。
- 访问级别:是指每个操作的访问级别,取值为写入(Write)、读取(Read)或列出(List)。
- 资源类型:是指操作中支持授权的资源类型。具体说明如下:
- 对于必选的资源类型,用背景高亮的方式表示。
- 对于不支持资源级授权的操作,用
全部资源
表示。
- 条件关键字:是指云产品自身定义的条件关键字。
- 关联操作:是指成功执行操作所需要的其他权限。操作者必须同时具备关联操作的权限,操作才能成功。
操作 | 访问级别 | 资源类型 | 条件关键字 | 关联操作 |
---|---|---|---|---|
sae:CreateSecret | *全部资源 * |
| 无 |
请求语法
POST /pop/v1/sam/secret/secret HTTP/1.1
请求参数
名称 | 类型 | 必填 | 描述 | 示例值 |
---|---|---|---|---|
NamespaceId | string | 是 | Secret 实例所在命名空间 ID。如果所在命名空间为默认命名空间,则只需填写 RegionId,例如 | cn-beijing:test |
SecretName | string | 是 | Secret 实例名称。允许数字、字母和下划线(_)组合,仅允许以字母开头。 | registry-auth-acree |
SecretType | string | 是 | 当前支持的 Secret 实例类型。取值说明如下:
| kubernetes.io/dockerconfigjson |
SecretData | object | 是 | Secret 数据。 | |
SecretData | string | 是 | Secret 键值对数据,为必填项。格式如下: {"Data":"{"k1":"v1", "k2":"v2"}"} k 表示键,v 表示值。 | {".dockerconfigjson":"eyJhdXRocyI6eyJyZWdpc3RyeS12cGMuY24tYmVpamluZy5hbGl5dW5jcy5jb20iOnsidXNlcm5hbWUiOiJ1c2VybmFtZSIsInBhc3N3b3JkIjoicGFzc3dvcmQiLCJhdXRoIjoiZFhObGNtNWhiV1U2Y0dGemMzZHZjbVE9In0sInJlZ2lzdHJ5LmNuLWJlaWppbmcuYWxpeXVuY3MuY29tIjp7InVzZXJuYW1lIjoidXNlcm5hbWUiLCJwYXNzd29yZCI6InBhc3N3b3JkIiwiYXV0aCI6ImRYTmxjbTVoYldVNmNHRnpjM2R2Y21RPSJ9fX0="} |
示例:使用用户名密码,跨账号内网拉取容器镜像服务 ACR 的镜像
- 请同时填写公网与内网域名。
- 请同时填写 username、password 与 auth 字段,避免鉴权失败。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($用户名:$密码)
}
}
} )
返回参数
示例
正常返回示例
JSON
格式
{
"RequestId": "91F93257-7A4A-4BD3-9A7E-2F6EAE6D****",
"Message": "success",
"TraceId": "0a98a02315955564772843261e****",
"Data": {
"SecretId": 16
},
"ErrorCode": "空",
"Code": "200",
"Success": true
}
错误码
HTTP status code | 错误码 | 错误信息 | 描述 |
---|---|---|---|
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请求处理报错。 |
访问错误中心查看更多错误码。
变更历史
变更时间 | 变更内容概要 | 操作 |
---|---|---|
2023-05-24 | OpenAPI 错误码发生变更 | 查看变更详情 |