Phương thức: gói lại

Phương thức này giúp bạn di chuyển từ Dịch vụ danh sách kiểm soát quyền truy cập khoá (KACLS1) cũ sang KACLS mới hơn (KACLS2). Thao tác này lấy một Khoá mã hoá dữ liệu (DEK) được bao bọc bằng API wrap của KACLS1 và trả về một DEK được bao bọc bằng API wrap của KACLS2.

Yêu cầu HTTP

POST https://KACLS_URL/rewrap

Thay thế KACLS_URL bằng URL của Dịch vụ danh sách kiểm soát quyền truy cập khoá (KACLS).

Tham số đường dẫn

Không có.

Nội dung yêu cầu

Nội dung yêu cầu chứa dữ liệu với cấu trúc sau:

Biểu diễn dưới dạng JSON
{
  "authorization": string,
  "original_kacls_url": string,
  "reason": string,
  "wrapped_key": string
}
Trường
authorization

string

Một JWT khẳng định rằng người dùng được phép mở khoá cho resource_name. Xem mã thông báo uỷ quyền.

original_kacls_url

string

URL của KACLS của wrapped_key hiện tại.

reason

string (UTF-8)

Một chuỗi JSON truyền qua cung cấp thêm bối cảnh về thao tác. Bạn nên dọn dẹp JSON đã cung cấp trước khi hiển thị. Kích thước tối đa: 1 KB.

wrapped_key

string

Đối tượng nhị phân base64 do wrap trả về.

Nội dung phản hồi

Nếu thành công, phương thức này sẽ trả về một đối tượng nhị phân không trong suốt mà Google Workspace sẽ lưu trữ cùng với đối tượng được mã hoá và gửi nguyên trạng trong mọi thao tác mở khoá khoá tiếp theo. Phương thức này cũng sẽ trả về resource_key_hash được mã hoá base64.

Nếu thao tác không thành công, bạn nên trả về phản hồi lỗi có cấu trúc.

Đối tượng nhị phân phải chứa bản sao duy nhất của DEK đã mã hoá, dữ liệu cụ thể về việc triển khai có thể được lưu trữ trong đó.

Đừng lưu trữ DEK trong hệ thống KACLS, thay vào đó, hãy mã hoá và trả về DEK trong đối tượng wrapped_key. Điều này giúp ngăn chặn sự khác biệt về thời gian tồn tại giữa tài liệu và các khoá của tài liệu. Ví dụ: để đảm bảo rằng dữ liệu của người dùng sẽ bị xoá hoàn toàn khi họ yêu cầu hoặc để đảm bảo rằng các phiên bản trước được khôi phục từ bản sao lưu sẽ có thể giải mã.

Google sẽ không gửi yêu cầu xoá đến KACLS khi các đối tượng bị xoá.

Biểu diễn dưới dạng JSON
{
  "resource_key_hash": string,
  "wrapped_key": string
}
Trường
resource_key_hash

string

đối tượng nhị phân được mã hoá base64. Xem hàm băm khoá tài nguyên.

wrapped_key

string

Đối tượng nhị phân được mã hoá base64. Kích thước tối đa: 1 KB.

Ví dụ:

Ví dụ này cung cấp một yêu cầu và phản hồi mẫu cho phương thức rewrap.

Yêu cầu

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://original.example.com/kacls/v1",
   "reason": "{client:'drive' op:'read'}"
}

Phản hồi

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