Criptografia de uma DEK
Função
Essa API permite criptografar uma DEK usando uma CMK especificada.
URI
POST /v1.0/{project_id}/kms/encrypt-datakey
Parâmetro |
Obrigatoriedade |
Tipo |
Descrição |
---|---|---|---|
project_id |
Sim |
String |
ID do projeto. |
Parâmetros de solicitação
Parâmetro |
Obrigatoriedade |
Tipo |
Descrição |
---|---|---|---|
X-Auth-Token |
Sim |
String |
Token do usuário. O token pode ser obtido chamando a API do IAM (valor de X-Subject-Token no cabeçalho de resposta). |
Parâmetro |
Obrigatoriedade |
Tipo |
Descrição |
---|---|---|---|
key_id |
Sim |
String |
ID de CMK. Deve ter 36 bytes e corresponder à expressão regular ^[0-9a-z]{8}-[0-9a-z]{4}-[0-9a-z]{4}-[0-9a-z]{4}-[0-9a-z]{12}$. Exemplo: 0d0466b0-e727-4d9c-b35d-f84bb474a37f |
encryption_context |
Não |
Object |
Pares de chave-valor com um comprimento máximo de caracteres 8.192. Esse parâmetro é usado para registrar informações de contexto de recursos, excluindo informações confidenciais, para garantir a integridade dos dados. Se esse parâmetro for especificado durante a criptografia, ele também será necessário para a descriptografia. Exemplo: {"Key1":"Value1","Key2":"Value2"} |
plain_text |
Sim |
String |
Tanto o texto não criptografado de uma DEK quanto o valor de hash SHA-256 (32 bytes) do texto não criptografado são expressos como uma cadeia hexadecimal. Tanto o texto não criptografado (64 bytes) de uma DEK quanto o valor de hash SHA-256 (32 bytes) do texto não criptografado são expressos como uma cadeia hexadecimal. |
datakey_plain_length |
Sim |
String |
Número de bytes de uma DEK em texto não criptografado. O intervalo de valores é de 1 a 1024. Número de bytes de uma DEK em texto não criptografado. O valor é 64. |
sequence |
Não |
String |
Número de sequência de 36-byte de uma mensagem de solicitação. Exemplo: 919c82d4-8046-4722-9094-35c3c6524cff |
Parâmetros de resposta
Código de status: 200
Parâmetro |
Tipo |
Descrição |
---|---|---|
key_id |
String |
ID de CMK. |
cipher_text |
String |
A DEK de texto cifrado em formato hexadecimal. Dois caracteres representam 1 byte. |
datakey_length |
String |
Comprimento de uma DEK, em bytes. |
Código de status: 400
Parâmetro |
Tipo |
Descrição |
---|---|---|
error |
Object |
Mensagem de erro. |
Parâmetro |
Tipo |
Descrição |
---|---|---|
error_code |
String |
Código de erro. |
error_msg |
String |
Informação de erro. |
Código de status: 403
Parâmetro |
Tipo |
Descrição |
---|---|---|
error |
Object |
Mensagem de erro. |
Parâmetro |
Tipo |
Descrição |
---|---|---|
error_code |
String |
Código de erro. |
error_msg |
String |
Informação de erro. |
Código de status: 404
Parâmetro |
Tipo |
Descrição |
---|---|---|
error |
Object |
Mensagem de erro. |
Parâmetro |
Tipo |
Descrição |
---|---|---|
error_code |
String |
Código de erro. |
error_msg |
String |
Informação de erro. |
Exemplo de solicitações
{ "key_id" : "0d0466b0-e727-4d9c-b35d-f84bb474a37f", "plain_text" : "7549d9aea901767bf3c0b3e14b10722eaf6f59053bbd82045d04e075e809a0fe6ccab48f8e5efe74e4b18ff0512525e527b10331100f357bf42125d8d5ced94ffbc8ac72b0785ca7fe33eb6776ce3990b11e32b299d9c0a9ee0305fb9540f797", "datakey_plain_length" : "64" }
Exemplo de respostas
Código de status: 200
Processamento da solicitação bem-sucedido.
{ "key_id" : "0d0466b0-e727-4d9c-b35d-f84bb474a37f", "datakey_length" : "64", "cipher_text" : "020098009EEAFCE122CAA5927D2XXX..." }
Código de status: 400
Parâmetros de solicitação inválidos.
{ "error" : { "error_code" : "KMS.XXX", "error_msg" : "XXX" } }
Código de status: 403
Autenticação falhou.
{ "error" : { "error_code" : "KMS.XXX", "error_msg" : "XXX" } }
Código de status: 404
O recurso solicitado não existe ou não foi encontrado.
{ "error" : { "error_code" : "KMS.XXX", "error_msg" : "XXX" } }
Códigos de status
Código de status |
Descrição |
---|---|
200 |
Processamento da solicitação bem-sucedido. |
400 |
Parâmetros de solicitação inválidos. |
403 |
Autenticação falhou. |
404 |
O recurso solicitado não existe ou não foi encontrado. |
Códigos de erro
Consulte Códigos de erro.