Secret Metadata API - 参考

GET /v1/secrets/{uuid}/metadata

列出 secret 的用户自定义元数据。

如果 secret 不包含任何用户元数据,将返回一个空列表。

请求:

GET /v1/secrets/{uuid}/metadata
Headers:
    Accept: application/json
    X-Auth-Token: <token>

响应:

{
  'metadata': {
    'description': 'contains the AES key',
    'geolocation': '12.3456, -98.7654'
    }
}

响应属性

名称

类型

描述

metadata

列表

包含 secret 元数据的键/值对列表。提供的键必须为小写。如果不是,它们将被转换为小写。

HTTP 状态码

代码

描述

200

成功请求

401

无效的 X-Auth-Token 或 token 没有访问此资源的权限。

403

禁止。用户已通过身份验证,但未被授权检索 secret 元数据。这可能基于用户的角色。

404

未找到

PUT /v1/secrets/{uuid}/metadata

设置 secret 的元数据。任何先前设置的元数据将被删除并替换为此元数据。

参数

名称

类型

描述

metadata

列表

包含 secret 元数据的键/值对列表。提供的键必须为小写。如果不是,它们将被转换为小写。

请求:

PUT /v1/secrets/{uuid}/metadata
Headers:
    Content-Type: application/json
    X-Auth-Token: <token>

Content:
{
  'metadata': {
      'description': 'contains the AES key',
      'geolocation': '12.3456, -98.7654'
    }
}

响应:

201 OK
{
    "metadata_ref": "https://{barbican_host}/v1/secrets/{secret_uuid}/metadata"
}

HTTP 状态码

代码

描述

201

成功创建/更新 Secret 元数据

400

错误请求

401

无效的 X-Auth-Token 或 token 没有访问此资源的权限。

403

禁止。用户已通过身份验证,但未被授权创建 secret 元数据。这可能基于用户的角色。

GET /v1/secrets/{uuid}/metadata/{key}

检索 secret 的用户添加的元数据。

请求:

GET /v1/secrets/{uuid}/metadata/{key}
Headers:
    Accept: application/json
    X-Auth-Token: <token>

响应:

200 OK
{
  "key": "access-limit",
  "value": "0"
}

HTTP 状态码

代码

描述

200

成功请求

401

无效的 X-Auth-Token 或 token 没有访问此资源的权限

403

禁止。用户已通过身份验证,但未被授权检索 secret 元数据。这可能基于用户的角色。

404

未找到

POST /v1/secrets/{uuid}/metadata/

向 secret 的用户元数据添加一个新的键/值对。请求中发送的键不得已存在于元数据中。键也必须为小写,否则它将自动更改为小写。

请求:

POST /v1/secrets/{uuid}/metadata/
Headers:
    X-Auth-Token: <token>
    Content-Type: application/json

Content:
  {
    "key": "access-limit",
    "value": "11"
  }

响应:

201 Created
Secret Metadata Location: http://example.com:9311/v1/secrets/{uuid}/metadata/access-limit
  {
    "key": "access-limit",
    "value": "11"
  }

HTTP 状态码

代码

描述

201

成功请求

400

错误请求

401

无效的 X-Auth-Token 或 token 没有访问此资源的权限。

403

禁止。用户已通过身份验证,但未被授权创建 secret 元数据。这可能基于用户的角色。

409

冲突。提供的元数据键已存在。

PUT /v1/secrets/{uuid}/metadata/{key}

更新 secret 的用户元数据中现有的键/值对。请求中发送的键必须已存在于元数据中。键也必须为小写,否则它将自动更改为小写。

请求:

PUT /v1/secrets/{uuid}/metadata/{key}
Headers:
    X-Auth-Token: <token>
    Content-Type: application/json

Content:
  {
    "key": "access-limit",
    "value": "11"
  }

响应:

200 OK

{
  "key": "access-limit",
  "value": "11"
}

HTTP 状态码

代码

描述

200

成功请求

400

错误请求

401

无效的 X-Auth-Token 或 token 没有访问此资源的权限。

403

禁止。用户已通过身份验证,但未被授权更新 secret 元数据。这可能基于用户的角色。

404

未找到

DELETE /v1/secrets/{uuid}/metadata/{key}

按键删除 secret 元数据。

请求:

DELETE /v1/secrets/{uuid}/metadata/{key}
Headers:
    X-Auth-Token: <token>

响应:

204 No Content

HTTP 状态码

代码

描述

204

成功请求

401

无效的 X-Auth-Token 或 token 没有访问此资源的权限。

403

禁止。用户已通过身份验证,但未被授权删除 secret 元数据。这可能基于用户的角色。

404

未找到