Метод: приватный ключдекрипт

Распаковывает запакованный закрытый ключ, а затем расшифровывает ключ шифрования содержимого, зашифрованный с помощью открытого ключа.

HTTP-запрос

POST https:// KACLS_URL /privatekeydecrypt

Замените KACLS_URL на URL-адрес службы списков контроля доступа к ключам (KACLS).

Параметры пути

Никто.

Текст запроса

Тело запроса содержит данные со следующей структурой:

JSON-представление
{
  "authentication": string,
  "authorization": string,
  "algorithm": string,
  "encrypted_data_encryption_key": string,
  "rsa_oaep_label": string,
  "reason": string,
  "wrapped_private_key": string
}
Поля
authentication

string

JWT, выданный поставщиком удостоверений (IdP), подтверждающий личность пользователя. См. токены аутентификации .

authorization

string

JWT, подтверждающий, что пользователю разрешено распаковывать ключ для resource_name . См. токены авторизации .

algorithm

string

Алгоритм, который использовался для шифрования ключа шифрования данных (DEK) при шифровании конверта.

encrypted_data_encryption_key

string (UTF-8)

Ключ шифрования контента, закодированный в формате Base64, который зашифрован открытым ключом, связанным с закрытым ключом. Максимальный размер: 1 КБ.

rsa_oaep_label

string

Метка L в кодировке Base64, если алгоритм — RSAES-OAEP. Если алгоритм отличается от RSAES-OAEP, это поле игнорируется.

reason

string (UTF-8)

Строка JSON для передачи, предоставляющая дополнительный контекст операции. Перед отображением предоставленный JSON-файл должен быть очищен. Максимальный размер: 1 КБ.

wrapped_private_key

string

Закрытый ключ в кодировке base64. Максимальный размер: 8 КБ.

Формат закрытого ключа или запечатанного закрытого ключа определяется реализацией службы управления списками доступа к ключам (KACLS). На стороне клиента и Gmail он обрабатывается как непрозрачный объект.

Тело ответа

В случае успеха этот метод возвращает ключ шифрования данных base64.

Если операция завершается неудачей, возвращается структурированный ответ об ошибке .

JSON-представление
{
  "data_encryption_key": string
}
Поля
data_encryption_key

string

Ключ шифрования данных в кодировке base64.

Пример

В этом примере представлен образец запроса и ответа для метода privatekeydecrypt .

Запрос

POST https://mykacls.example.org/v1/privatekeydecrypt

{
  "wrapped_private_key": "wHrlNOTI9mU6PBdqiq7EQA...",
  "encrypted_data_encryption_key": "dGVzdCB3cmFwcGVkIGRlaw...",
  "authorization": "eyJhbGciOi...",
  "authentication": "eyJhbGciOi...",
  "algorithm": "RSA/ECB/PKCS1Padding",
  "reason": "decrypt"
}

Ответ

{
  "data_encryption_key": "akRQtv3nr+jUhcFL6JmKzB+WzUxbkkMyW5kQsqGUAFc="
}