Desencriptación de un DEK
Función
Esta API le permite descifrar un DEK usando un CMK especificado.
Restricciones
Los datos descifrados son el resultado en los datos cifrados.
URI
POST /v1.0/{project_id}/kms/decrypt-datakey
Parámetro |
Obligatorio |
Tipo |
Descripción |
---|---|---|---|
project_id |
Sí |
String |
ID del proyecto. |
Parámetros de solicitud
Parámetro |
Obligatorio |
Tipo |
Descripción |
---|---|---|---|
X-Auth-Token |
Sí |
String |
Token de usuario. El token se puede obtener llamando a la API IAM (valor de X-Subject-Token en el encabezado de respuesta). |
Parámetro |
Obligatorio |
Tipo |
Descripción |
---|---|---|---|
key_id |
Sí |
String |
CMK ID. Debe tener 36 bytes y coincidir con la expresión regular ^[0-9a-z]{8}-[0-9a-z]{4}-[0-9a-z]{4}-[0-9a-z]{4}-[0-9a-z]{12}$. Ejemplo: 0d0466b0-e727-4d9c-b35d-f84bb474a37f |
encryption_context |
No |
Object |
Pares clave-valor con una longitud máxima de 8,192 caracteres. Este parámetro se utiliza para registrar información de contexto de recursos, excluyendo información confidencial, para garantizar la integridad de los datos. Si este parámetro se especifica durante el encriptación, también se requiere para el desencriptación. Ejemplo: {"Key1":"Value1"",Key2":"Value2"} |
cipher_text |
Sí |
String |
Cadena hexadecimal del texto cifrado DEK y los metadatos. Es el valor de cipher_text en el resultado de encriptación. |
datakey_cipher_length |
Sí |
String |
Número de bytes de una clave. El rango de valores es de 1 a 1024. Número de bytes de una clave. El valor es 64. |
sequence |
No |
String |
Número de secuencia de 36 bytes de un mensaje de solicitud. Ejemplo: 919c82d4-8046-4722-9094-35c3c6524cff |
Parámetros de respuesta
Código de estado: 200
Parámetro |
Tipo |
Descripción |
---|---|---|
data_key |
String |
Cadena hexadecimal del texto plano de un DEK |
datakey_length |
String |
Longitud de un DEK de texto sin formato, en bytes. |
datakey_dgst |
String |
Cadena hexadecimal correspondiente al valor hash SHA-256 del texto sin formato de un DEK. |
Código de estado: 400
Parámetro |
Tipo |
Descripción |
---|---|---|
error |
Object |
Mensaje de error. |
Parámetro |
Tipo |
Descripción |
---|---|---|
error_code |
String |
Código de error. |
error_msg |
String |
Información de error. |
Código de estado: 403
Parámetro |
Tipo |
Descripción |
---|---|---|
error |
Object |
Mensaje de error. |
Parámetro |
Tipo |
Descripción |
---|---|---|
error_code |
String |
Código de error. |
error_msg |
String |
Información de error. |
Código de estado: 404
Parámetro |
Tipo |
Descripción |
---|---|---|
error |
Object |
Mensaje de error. |
Parámetro |
Tipo |
Descripción |
---|---|---|
error_code |
String |
Código de error. |
error_msg |
String |
Información de error. |
Solicitudes de ejemplo
{ "key_id" : "0d0466b0-e727-4d9c-b35d-f84bb474a37f", "cipher_text" : "020098005273E14E6E8E95F5463BECDC27E80AFxxxxxxxxxx...", "datakey_cipher_length" : "64" }
Ejemplo de respuestas
Código de estado: 200
El procesamiento de la solicitud se ha realizado correctamente.
{ "data_key" : "000000e724d9cb35df84bb474a37fXXX...", "datakey_length" : "64", "datakey_dgst" : "F5A5FD42D16A20302798EF6ED3099XXX..." }
Código de estado: 400
Parámetros de solicitud no válidos.
{ "error" : { "error_code" : "KMS.XXX", "error_msg" : "XXX" } }
Código de estado: 403
Error de autenticación.
{ "error" : { "error_code" : "KMS.XXX", "error_msg" : "XXX" } }
Código de estado: 404
La página solicitada no existe o no se encuentra.
{ "error" : { "error_code" : "KMS.XXX", "error_msg" : "XXX" } }
Códigos de estado
Código de estado |
Descripción |
---|---|
200 |
El procesamiento de la solicitud se ha realizado correctamente. |
400 |
Parámetros de solicitud no válidos. |
403 |
Error de autenticación. |
404 |
La página solicitada no existe o no se encuentra. |
Códigos de error
Consulte Códigos de error.