方法:wrap

返回加密的数据加密密钥 (DEK) 和相关数据。

有关详情,请参阅加密和解密数据

HTTP 请求

POST https://KACLS_URL/wrap

KACLS_URL 替换为密钥访问控制列表 服务 (KACLS) 网址。

路径参数

无。

请求正文

请求正文中包含结构如下的数据:

JSON 表示法
{
  "authentication": string,
  "authorization": string,
  "key": string,
  "reason": string
}
字段
authentication

string

由 IdP 颁发的 JWT,用于声明用户的身份。请参阅身份验证令牌

authorization

string

一个 JWT,断言允许用户封装 resource_name 的密钥。请参阅授权令牌

key

string

采用 base64 编码的 DEK。大小上限:128 个字节。

reason

string (UTF-8)

提供操作的其他上下文的直通式 JSON 字符串。提供的 JSON 应在显示之前进行清理。大小上限:1 KB。

响应正文

如果成功,此方法将返回一个不透明的二进制对象,该对象将被存储 并在任何后续操作中按原样发送 密钥解封操作。

如果操作失败, 结构化错误回复

该二进制对象应包含已加密 DEK 的唯一副本, 实现特定数据可以存储在其中。

请勿将 DEK 存储在密钥访问控制列表服务 (KACLS) 系统中, 而是将其加密并在 wrapped_key 对象中返回。这可防止 文档与其密钥之间的生命周期差异。例如,为了确保 当用户提出请求时,系统会完全清除用户的数据 从备份恢复的先前版本是可解密的。

JSON 表示法
{
  "wrapped_key": string
}
字段
wrapped_key

string

采用 base64 编码的二进制对象。大小上限:1 KB。

示例

此示例提供了 wrap 方法的示例请求和响应。

请求

POST https://mykacls.example.com/v1/wrap

{
   "key":"wHrlNOTI9mU6PBdqiq7EQA==",
   "authorization": "eyJhbGciOi…"
   "authentication": "eyJhbGciOi…"
   "reason": "{client:'drive' op:'update'}"
}

响应

{
    "wrapped_key": "3qTh6Mp+svPwYPlnZMyuj8WHTrM59wl/UI50jo61Qt/QubZ9tfsUc1sD62xdg3zgxC9quV4r+y7AkbfIDhbmxGqP64pWbZgFzOkP0JcSn+1xm/CB2E5IknKsAbwbYREGpiHM3nzZu+eLnvlfbzvTnJuJwBpLoPYQcnPvcgm+5gU1j1BjUaNKS/uDn7VbVm7hjbKA3wkniORC2TU2MiHElutnfrEVZ8wQfrCEpuWkOXs98H8QxUK4pBM2ea1xxGj7vREAZZg1x/Ci/E77gHxymnZ/ekhUIih6Pwu75jf+dvKcMnpmdLpwAVlE1G4dNginhFVyV/199llf9jmHasQQuaMFzQ9UMWGjA1Hg2KsaD9e3EL74A5fLkKc2EEmBD5v/aP+1RRZ3ISbTOXvxqYIFCdSFSCfPbUhkc9I2nHS0obEH7Q7KiuagoDqV0cTNXWfCGJ1DtIlGQ9IA6mPDAjX8Lg=="
}