Todos os produtos
Search
Central de documentação

Key Management Service:AdvanceGenerateDataKey

Última atualização: Jun 27, 2026

Gera uma chave de dados para criptografia de envelope usando o Key Management Service (KMS). A operação retorna a chave de dados em texto simples e a chave de dados cifrada. Use a chave de dados em texto simples para criptografar dados fora do KMS e armazene a chave de dados cifrada com os dados de autenticação (Aad) para descriptografia futura.

Funcionamento

A operação usa um gerador de números aleatórios de alta qualidade para produzir uma chave de dados, independente do material da chave do KMS. Em seguida, criptografa essa chave de dados com a versão primária da chave do KMS especificada no modo Galois/Counter (GCM).

Importante

Se a rotação automática de chaves estiver ativada, chame AdvanceGenerateDataKey (e não GenerateDataKey) para gerar chaves de dados. O uso de GenerateDataKey com a rotação de chaves ativada interrompe o funcionamento do recurso de rotação. Para mais detalhes, consulte configure rotação de chaves.

AdvanceGenerateDataKey vs GenerateDataKey

Ambas as operações geram uma chave de dados, mas diferem quanto à versão da chave usada para criptografia e aos dados que você deve armazenar posteriormente.

Aspecto

AdvanceGenerateDataKey

GenerateDataKey

Versão da chave usada para criptografia

Versão primária da chave

Versão inicial da chave

Dados a armazenar após a criptografia

CiphertextBlob, Aad

CiphertextBlob, Iv, Algorithm, Aad

Operação de descriptografia compatível

AdvanceDecrypt

Decrypt ou AdvanceDecrypt

Limites

Esta operação é compatível apenas com chaves simétricas em instâncias do KMS do tipo gerenciamento de chaves por software. Para ver as especificações de chaves compatíveis, consulte Tipos e especificações de chaves.

Importante

Apenas o modo GCM é compatível com a criptografia de chaves de dados.

Parâmetros da solicitação

Parâmetro

Tipo

Obrigatório

Exemplo

Descrição

KeyId

string

Sim

key-hzz62f1cb66fa42qo****

ID globalmente exclusivo da chave do KMS ou alias vinculado à chave. A chave deve ser simétrica e pertencer a uma instância do KMS do tipo gerenciamento de chaves por software.

NumberOfBytes

int

Sim

32

Comprimento da chave de dados a gerar.

Aad

binary

Não

Dados binários

Dados de autenticação para criptografia no modo GCM. Se especificado, passe o mesmo valor de Aad ao chamar AdvanceDecrypt.

Elementos da resposta

Parâmetro

Tipo

Exemplo

Descrição

CiphertextBlob

bytes

Texto cifrado binário

Chave de dados cifrada. Este campo codifica o ID da chave (KeyId), o algoritmo de criptografia (Algorithm) e o vetor inicial (Iv) usados na criptografia. Para descriptografar, passe apenas CiphertextBlob e Aad para AdvanceDecrypt.

Plaintext

bytes

Texto simples binário

Chave de dados em texto simples. Use-a para criptografar dados fora do KMS.

KeyId

string

key-hzz62f1cb66fa42qo****

ID globalmente exclusivo da chave do KMS. Se o KeyId da solicitação for um alias, este campo retornará o ID da chave vinculada a esse alias.

KeyVersionId

string

key-hzz62f1cb66fa42qo**-17kedv**

ID da versão da chave usada para criptografar a chave de dados.

Algorithm

string

AES_GCM

Algoritmo usado para criptografar a chave de dados.

Iv

bytes

Dados binários

Vetor inicial usado para criptografar a chave de dados.

RequestId

string

c0065a6d-7784-4ef2-a692-288fdcbc7b9d

ID da solicitação.

Códigos de erro

Código de status HTTP

Código de erro

Mensagem de erro

Descrição

404

Forbidden.OnlySymmetricKeySupported

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

Apenas chaves simétricas são compatíveis.

Para obter a lista completa de códigos de erro, consulte Códigos de erro do serviço.