Todos los productos
Search
Centro de documentos

Key Management Service:AdvanceGenerateDataKey

Última actualización: Sep 03, 2026

Genera una clave de datos para el cifrado de sobre mediante Key Management Service (KMS). La operación devuelve tanto la clave de datos en texto sin formato como la clave de datos cifrada. Use la clave de datos en texto sin formato para cifrar datos fuera de KMS y, posteriormente, almacene la clave de datos cifrada junto con los datos de autenticación (Aad) para su descifrado futuro.

Funcionamiento

La operación emplea un generador de números aleatorios de alta calidad para producir una clave de datos, independiente del material de clave de KMS. A continuación, cifra dicha clave de datos mediante la versión principal de la clave de KMS especificada en modo Galois/Counter (GCM).

Importante

Si la rotación automática de claves está habilitada, invoque AdvanceGenerateDataKey (no GenerateDataKey) para generar claves de datos. El uso de GenerateDataKey cuando la rotación de claves está habilitada provoca que la función de rotación deje de funcionar. Para obtener más información, consulte Configure key rotation.

Diferencias entre AdvanceGenerateDataKey y GenerateDataKey

Ambas operaciones generan una clave de datos, pero difieren en la versión de clave que se usa para el cifrado y en los datos que debe almacenar después.

Aspecto

AdvanceGenerateDataKey

GenerateDataKey

Versión de clave usada para el cifrado

Versión principal de la clave

Versión inicial de la clave

Datos que se deben almacenar tras el cifrado

CiphertextBlob, Aad

CiphertextBlob, Iv, Algorithm, Aad

Operación de descifrado compatible

AdvanceDecrypt

Decrypt o AdvanceDecrypt

Límites

Esta operación solo admite claves simétricas en instancias de KMS del tipo de gestión de claves por software. Para consultar las especificaciones de clave compatibles, consulte Key types and specifications.

Importante

Solo se admite el modo GCM para el cifrado de claves de datos.

Parámetros de solicitud

Parámetro

Tipo

Obligatorio

Ejemplo

Descripción

KeyId

string

Sí

key-hzz62f1cb66fa42qo****

El identificador único global de la clave de KMS o un alias vinculado a la clave. La clave debe ser simétrica y pertenecer a una instancia de KMS del tipo de gestión de claves por software.

NumberOfBytes

int

Sí

32

La longitud de la clave de datos por generar.

Aad

binary

No

Datos binarios

Los datos de autenticación para el cifrado en modo GCM. Si se especifica este valor, también debe pasar el mismo valor de Aad al invocar AdvanceDecrypt.

Elementos de respuesta

Parámetro

Tipo

Ejemplo

Descripción

CiphertextBlob

bytes

Texto cifrado binario

La clave de datos cifrada. Este campo codifica el identificador de clave (KeyId), el algoritmo de cifrado (Algorithm) y el vector inicial (Iv) usados durante el cifrado. Para descifrar, pase únicamente CiphertextBlob y Aad a AdvanceDecrypt.

Plaintext

bytes

Texto sin formato binario

La clave de datos en texto sin formato. Úsela para cifrar datos fuera de KMS.

KeyId

string

key-hzz62f1cb66fa42qo****

El identificador único global de la clave de KMS. Si el KeyId de la solicitud era un alias, este campo devuelve el identificador de la clave a la que está vinculado dicho alias.

KeyVersionId

string

key-hzz62f1cb66fa42qo**-17kedv**

El identificador de la versión de clave usada para cifrar la clave de datos.

Algorithm

string

AES_GCM

El algoritmo de cifrado usado para cifrar la clave de datos.

Iv

bytes

Datos binarios

El vector inicial usado para cifrar la clave de datos.

RequestId

string

c0065a6d-7784-4ef2-a692-288fdcbc7b9d

El identificador de la solicitud.

Códigos de error

Código de estado HTTP

Código de error

Mensaje de error

Descripción

404

Forbidden.OnlySymmetricKeySupported

The key %s is not a symmetric key. The API only supports symmetric keys.

Solo se admiten claves simétricas.

Para consultar la lista completa de códigos de error, consulte Service error codes.