此方法可帮助您从旧版密钥访问控制列表服务迁移
(KACLS1) 连接到较新的 KACLS (KACLS2)。它需要数据加密密钥 (DEK)
并使用 KACLS1 的 wrap
API 封装,并返回
使用 KACLS2 的 wrap
API 封装的 DEK。
HTTP 请求
POST https://KACLS_URL/rewrap
将 KACLS_URL
替换为密钥访问控制列表
服务 (KACLS) 网址。
路径参数
无。
请求正文
请求正文中包含结构如下的数据:
JSON 表示法 | |
---|---|
{ "authorization": string, "original_kacls_url": string, "reason": string, "wrapped_key": string } |
字段 | |
---|---|
authorization |
一个 JWT,断言允许用户解封 |
original_kacls_url |
当前 wrapped_key 的 KACLS 的网址。 |
reason |
提供操作的其他上下文的直通式 JSON 字符串。提供的 JSON 应在显示之前进行清理。大小上限:1 KB。 |
wrapped_key |
|
响应正文
如果成功,此方法将返回一个不透明的二进制对象,该对象将被存储 并在任何后续操作中按原样发送 密钥解封操作。它还应该返回 base64 编码的 resource_key_hash。
如果操作失败, 结构化错误回复 。
该二进制对象应包含已加密 DEK 的唯一副本, 实现特定数据可以存储在其中。
不要将该 DEK 存储在您的 KACLS 系统中,而应将其加密并返回
wrapped_key
对象。这样可防止
文档及其密钥。例如,为了确保用户的数据
或确保以前的版本已经恢复
文件均可解密
删除对象时,Google 不会向 KACLS 发送删除请求。
JSON 表示法 | |
---|---|
{ "resource_key_hash": string, "wrapped_key": string } |
字段 | |
---|---|
resource_key_hash |
base64 编码的二进制对象。请参阅 资源密钥哈希。 |
wrapped_key |
采用 base64 编码的二进制对象。大小上限:1 KB。 |
示例
此示例提供了 rewrap
方法的示例请求和响应。
请求
POST https://mykacls.example.com/v1/rewrap
{
"wrapped_key": "7qTh6Mp+svVwYPlnZMyuj8WHTrM59wl/UI50jo61Qt/QubZ9tfsUc1sD62xdg3zgxC9quV4r+y7AkbfIDhbmxGqP64pWbZgFzOkP0JcSn+1xm/CB2E5IknKsAbwbYREGpiHM3nzZu+eLnvlfbzvTnJuJwBpLoPYQcnPvcgm+5gU1j1BjUaNKS/uDn7VbVm7hjbKA3wkniORC2TU2MiHElutnfrEVZ8wQfrCEpuWkOXs98H8QxUK4pBM2ea1xxGj7vREAZZg1x/Ci/E77gHxymnZ/ekhUIih6Pwu75jf+dvKcMnpmdLpwAVlE1G4dNginhFVyV/199llf9jmHasQQuaMFzQ9UMWGjA1Hg2KsaD9e3EL74A5fLkKc2EEmBD5v/aP+1RRZ3ISbTOXvxqYIFCdSFSCfPbUhkc9I2nHS0obEH7Q7KiuagoDqV0cTNXWfCGJ1DtIlGQ9IA6mPDAjX8Lg==",
"authorization": "eyJhbGciOi...",
"original_kacls_url": "https://<kacl1_base_url>",
"reason": "{client:'drive' op:'read'}"
}
响应
{
"wrapped_key": "3qTh6Mp+svPwYPlnZMyuj8WHTrM59wl/UI50jo61Qt/QubZ9tfsUc1sD62xdg3zgxC9quV4r+y7AkbfIDhbmxGqP64pWbZgFzOkP0JcSn+1xm/CB2E5IknKsAbwbYREGpiHM3nzZu+eLnvlfbzvTnJuJwBpLoPYQcnPvcgm+5gU1j1BjUaNKS/uDn7VbVm7hjbKA3wkniORC2TU2MiHElutnfrEVZ8wQfrCEpuWkOXs98H8QxUK4pBM2ea1xxGj7vREAZZg1x/Ci/E77gHxymnZ/ekhUIih6Pwu75jf+dvKcMnpmdLpwAVlE1G4dNginhFVyV/199llf9jmHasQQuaMFzQ9UMWGjA1Hg2KsaD9e3EL74A5fLkKc2EEmBD5v/aP+1RRZ3ISbTOXvxqYIFCdSFSCfPbUhkc9I2nHS0obEH7Q7KiuagoDqV0cTNXWfCGJ1DtIlGQ9IA6mPDAjX8Lg==",
"resource_key_hash": "SXOyPekBAUI95zuZSuJzsBlK4nO5SuJK4nNCPem5SuI="
}