GenerateDataKeyWithoutPlaintext
In this article:
GenerateDataKeyWithoutPlaintext#
Description#
Генерирует случайный ключ шифрования для использования вне KMS. Метод возвращает копию ключа, зашифрованную ключом KMS.
Request Parameters#
Необходимые параметры#
KeyId — Идентификатор ключа KMS. В качестве идентификатора можно указать имя алиаса с префиксом
alias/.Тип: String
Необходимо: Да
Опциональные параметры#
EncryptionContext — Контекст шифрования, используемый как дополнительные аутентифицированные данные (AAD).
Тип: Map of strings
Необходимо: Нет
Ограничения: Суммарная длина всех строк в кодировке UTF-8 не должна превышать 6144 байт
KeySpec — Тип ключа. Используйте
AES_128, чтобы сгенерировать 128-разрядный ключ, илиAES_256, чтобы сгенерировать 256-разрядный ключ.Тип: String
Необходимо: Да, если не указан NumberOfBytes
Возможные значения:
AES_128|AES_256
NumberOfBytes — Длина ключа в байтах.
Тип: String
Необходимо: Да, если не указан KeySpec
Диапазон: От 1 до 1024
Response Elements#
CiphertextBlob — Копия ключа, зашифрованная ключом KMS.
Тип: Base64-encoded binary data
Ограничение длины: От 1 до 6144 байт
Examples#
Пример запроса#
POST / HTTP/1.1
Host: kms.<region>.<domain>
Content-Length: <PayloadSizeBytes>
Content-Type: application/x-amz-json-1.1
Authorization: AWS4-HMAC-SHA256 Credential=<Credential>, SignedHeaders=<Headers>, Signature=<Signature>
X-Amz-Date: <Date>
X-Amz-Target: TrentService.GenerateDataKeyWithoutPlaintext
{
"KeyId": "1234abcd-12ab-34cd-56ef-1234567890ab",
"KeySpec": "AES_256"
}
Пример ответа#
HTTP/1.1 200 OK
Content-Type: application/x-amz-json-1.1
{
"CiphertextBlob": "AAAAAM4+iMkZakUYoOjQVwv/+RaNerguTbNtiK78FmF8u+P9u6gNwryNN5JSqsv3meTKbhXnO6vi7OW028t4wbFW7Qbr5FvWRLPtlTSrLqcpZO1R8gB+7JPYMdW+/ndH2BiCMoYwOmjVOiXN/CclpQ=="
}