Mensaje de firma
Función
Esta API le permite crear una firma digital para un mensaje o resumen de mensaje mediante el uso de la clave privada en un CMK asimétrico.
Restricciones
- Solo admite claves asimétricas con key_usage de SIGN_VERIFY para la operación de firma.
URI
POST /v1.0/{project_id}/kms/sign
|
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 |
ID de clave. 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 |
|
message |
Sí |
String |
Especifica el mensaje o resumen de mensaje que se va a firmar. Los mensajes pueden ser 0-4096 bytes. Para firmar un mensaje más grande, proporcione el resumen del mensaje.Uso de objeto de datos binarios codificados en Base64. |
|
signing_algorithm |
Sí |
String |
Especifica el algoritmo de firma que se utilizará al firmar el mensaje. Elija un algoritmo que sea compatible con el tipo de CMK asimétrico especificado. Puede ser:
|
|
message_type |
No |
String |
Tipo de mensaje. El valor por defecto es "DIGEST" Puede ser:
|
|
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 |
|---|---|---|
|
key_id |
String |
CMK ID. |
|
signature |
String |
Firma criptográfica generada para el mensaje. |
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",
"signing_algorithm" : "RSASSA_PKCS1_V1_5_SHA_256",
"message" : "MmFiZWE0ZjI3ZGIxYTkzY2RmYmEzM2YwMTA1YmJjYw=="
}
Ejemplo de respuestas
Código de estado: 200
El procesamiento de la solicitud se ha realizado correctamente.
{
"key_id" : "0d0466b0-e727-4d9c-b35d-f84bb474a37f",
"signature" : "jFUqQESGBc0j6k9BozzrP9YL4qk8/W9DZRvK6XXX..."
}
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.