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 un CMK

Función

Esta API se utiliza para crear claves maestras de cliente (CMK).

  • Los CMK simétricos contienen una clave simétrica de 256 bits. Se puede utilizar para cifrar y descifrar pequeñas cantidades de datos o claves de encriptación de datos (DEK).
  • Las CMK asimétricas pueden contener un par de claves RSA o un par de claves de Elliptic Curve (ECC). Se puede utilizar para firmar y verificar mensajes

Restricciones

Default Master Keys son creadas por servicios integrados con KMS. Los nombres de las claves maestras predeterminadas terminan en /default. No termine sus nombres CMK con /default. Las claves maestras predeterminadas de los usuarios de proyectos de empresa pertenecen a sus proyectos de empresa predeterminados y no se pueden mover a otros proyectos de empresa. Las claves maestras predeterminadas proporcionan funciones básicas de encriptación basadas en la nube para cumplir con los requisitos de cumplimiento y pueden ser utilizadas por proyectos empresariales no predeterminados. También puede crear y usar sus propias claves según sea necesario.

URI

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

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_alias

String

Alias de una clave maestra no predeterminada. El valor es una cadena de 1 a 255 caracteres que coinciden con la expresión regular ^[a-zA-Z0-9:/_-]{1,255}$ y debe ser diferente del alias de la clave maestra predeterminada.

key_spec

No

String

Tipo de algoritmo CMK, por defecto es "AES_256". Puede ser:

  • AES_256
  • RSA_2048
  • RSA_3072
  • RSA_4096
  • EC_P256
  • EC_P384

key_usage

No

String

Determina las operaciones criptográficas para las que puede utilizar el CMK. El valor predeterminado para la clave simétrica es ENCRYPT_DECRYPT y para la clave asimétrica es SIGN_VERIFY.

  • ENCRYPT_DECRYPT
  • SIGN_VERIFY

key_description

No

String

Descripción de clave. Puede contener de 0 a 255 caracteres.

origin

No

String

Fuente de CMK. Puede ser:

  • kms: El material clave fue generado por KMS.
  • external: Se importó el material clave.

enterprise_project_id

No

String

ID del proyecto de empresa.

  • Si la función de proyecto de empresa no está habilitada, no es necesario establecer este parámetro.
  • Si la función de proyecto de empresa está habilitada, puede establecer este parámetro al crear un recurso. Si no se especifica este parámetro, el recurso que cree se colocará en el proyecto de empresa predeterminado (cuyo ID de proyecto es 0).
  • Si no tiene permiso para crear recursos en el proyecto de empresa predeterminado, se informará de un error.

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

key_info

KeKInfo object

Detalles de clave.

Tabla 5 KeKInfo

Parámetro

Tipo

Descripción

key_id

String

CMK ID.

domain_id

String

ID de dominio de usuario.

Código de estado: 400

Tabla 6 Parámetros de body de respuesta

Parámetro

Tipo

Descripción

error

Object

Mensaje de error.

Tabla 7 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 8 Parámetros de body de respuesta

Parámetro

Tipo

Descripción

error

Object

Mensaje de error.

Tabla 9 ErrorDetail

Parámetro

Tipo

Descripción

error_code

String

Código de error.

error_msg

String

Información de error.

Solicitudes de ejemplo

{
  "key_alias" : "test"
}

Ejemplo de respuestas

Código de estado: 200

El procesamiento de la solicitud se ha realizado correctamente.

{
  "key_info" : {
    "key_id" : "bb6a3d22-dc93-47ac-b5bd-88df7ad35f1e",
    "domain_id" : "b168fe00ff56492495a7d22974df2d0b"
  }
}

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ó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.

Códigos de error

Consulte Códigos de error.