Estos contenidos se han traducido de forma automática para su comodidad, pero Huawei Cloud no garantiza la exactitud de estos. Para consultar los contenidos originales, acceda a la versión en inglés.
Actualización más reciente 2022-11-03 GMT+08:00

Creación de una autorización

Función

Esta API se utiliza para crear una autorización. Un concesionario puede realizar operaciones en una clave concedida.

Restricciones

Una Default Master Key (cuyo sufijo de alias es /default) no permite la concesión de permisos.

URI

POST /v1.0/{project_id}/kms/create-grant

Tabla 1 Parámetros de path

Parámetro

Obligatorio

Tipo

Descripción

project_id

String

ID del proyecto.

Parámetros de solicitud

Tabla 2 Parámetros de encabezado de solicitud

Parámetro

Obligatorio

Tipo

Descripción

X-Auth-Token

String

Token de usuario. El token se puede obtener llamando a la API IAM (valor de X-Subject-Token en el encabezado de respuesta).

Tabla 3 Parámetros de body de solicitud

Parámetro

Obligatorio

Tipo

Descripción

key_id

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

grantee_principal

String

ID del concesionario, que contiene de 1 a 64 bytes y coincide con la expresión regular ^[a-zA-Z0-9]{1, 64}$. Ejemplo: 0d0466b00d0466b00d0466b00d0466b0

operations

Array of strings

Lista de operaciones concedidas. Valores: create-datakey, create-datakey-without-plaintext, encrypt-datakey, decrypt-datakey, describe-key, create-grant, retire-grant, encrypt-data, decrypt-data. Un valor que contiene sólo create-grant no es válido.

name

No

String

Nombre de concesión. El valor es una cadena de 1 a 255 caracteres y coincide con la expresión regular ^[a-zA-Z0-9:/_-]{1,255}$.

retiring_principal

No

String

ID del usuario que puede retirar una concesión. Contiene de 1 a 64 bytes y coincide con la expresión regular ^[a-zA-Z0-9]{1, 64}$. Ejemplo: 0d0466b00d0466b00d0466b00d0466b0

grantee_principal_type

No

String

Tipo de concesión. Valores: user, domain. El valor predeterminado es user.

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

Tabla 4 Parámetros de body de respuesta

Parámetro

Tipo

Descripción

grant_id

String

ID de concesión, que contiene 64 bytes.

Código de estado: 400

Tabla 5 Parámetros de body de respuesta

Parámetro

Tipo

Descripción

error

Object

Mensaje de error.

Tabla 6 ErrorDetail

Parámetro

Tipo

Descripción

error_code

String

Código de error.

error_msg

String

Información de error.

Código de estado: 403

Tabla 7 Parámetros de body de respuesta

Parámetro

Tipo

Descripción

error

Object

Mensaje de error.

Tabla 8 ErrorDetail

Parámetro

Tipo

Descripción

error_code

String

Código de error.

error_msg

String

Información de error.

Código de estado: 404

Tabla 9 Parámetros de body de respuesta

Parámetro

Tipo

Descripción

error

Object

Mensaje de error.

Tabla 10 ErrorDetail

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",
  "operations" : [ "describe-key", "create-datakey", "encrypt-datakey" ],
  "grantee_principal" : "13gg44z4g2sglzk0egw0u726zoyzvrs8",
  "grantee_principal_type" : "user",
  "retiring_principal" : "13gg44z4g2sglzk0egw0u726zoyzvrs8"
}

Ejemplo de respuestas

Código de estado: 200

El procesamiento de la solicitud se ha realizado correctamente.

{
  "grant_id" : "7c9a3286af4fcca5f0a385ad13e1d21a50e27b6dbcab50f37f30f93b8939827d"
}

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.