Este conteúdo foi traduzido por máquina para sua conveniência e a Huawei Cloud não pode garantir que o conteúdo foi traduzido com precisão. Para exibir o conteúdo original, use o link no canto superior direito para mudar para a página em inglês.
Atualizado em 2023-02-28 GMT+08:00

Criação de uma CMK

Função

Essa API é usada para criar chaves principais do cliente (CMKs).

  • As CMKs simétricas contêm uma chave simétrica de 256-bit. Ela pode ser usada para criptografar e descriptografar pequenas quantidades de dados ou chaves de criptografia de dados (DEKs).
  • As CMKs assimétricas podem conter um par de chaves de RSA ou um par de chaves de Curva Elíptica (ECC). Pode ser usado para assinar e verificar mensagens

Restrições

As chaves principais padrão são criadas por serviços integrados ao KMS. Os nomes das chaves principais padrão terminam com /default. Não termine seus nomes de CMK com /default. As chaves principais padrão dos usuários de projetos corporativos pertencem a seus projetos corporativos padrão e não podem ser movidas para outros projetos corporativos. As chaves principais padrão fornecem funções básicas de criptografia baseadas em nuvem para atender aos requisitos de conformidade e podem ser usadas por projetos corporativos não padrão. Você também pode criar e usar suas próprias chaves, conforme necessário.

URI

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

Tabela 1 Parâmetros de caminho

Parâmetro

Obrigatoriedade

Tipo

Descrição

project_id

Sim

String

ID do projeto.

Parâmetros de solicitação

Tabela 2 Parâmetros de cabeçalho 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).

Tabela 3 Parâmetros de corpo de solicitação

Parâmetro

Obrigatoriedade

Tipo

Descrição

key_alias

Sim

String

Alias de uma chave principal não padrão. O valor é uma cadeia de 1 a 255 caracteres que corresponde à expressão regular ^[a-zA-Z0-9:/_-]{1,255}$ e deve ser diferente do alias da chave principal padrão.

key_spec

Não

String

Tipo de algoritmo de CMK, o padrão é "AES_256". Pode ser:

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

key_usage

Não

String

Determina as operações criptográficas para as quais você pode usar a CMK. O valor padrão para chave simétrica é ENCRYPT_DECRYPT e para chave assimétrica é SIGN_VERIFY.

  • ENCRYPT_DECRYPT
  • SIGN_VERIFY

key_description

Não

String

Descrição da chave. Pode conter de 0 a 255 caracteres.

origin

Não

String

Fonte de CMK. Pode ser:

  • kms: o material de chave foi gerado pelo KMS.
  • externa: o material da chave foi importado.

enterprise_project_id

Não

String

ID do projeto empresarial.

  • Se a função do projeto empresarial não estiver ativada, você não precisará definir esse parâmetro.
  • Se a função do projeto empresarial estiver ativada, você poderá definir esse parâmetro ao criar um recurso. Se este parâmetro não for especificado, o recurso criado será colocado sob o projeto corporativo padrão (cujo ID do projeto é 0).
  • Se você não tiver permissão para criar recursos no projeto corporativo padrão, um erro será relatado.

sequence

Não

String

Número de sequência de 36 bytes de uma mensagem de solicitação. Exemplo: 919c82d4-8046-4722-9094-35c3c6524cff

Parâmetros de resposta

Código de status: 200

Tabela 4 Parâmetros de corpo da resposta

Parâmetro

Tipo

Descrição

key_info

KeKInfo object

Principais detalhes.

Tabela 5 KeKInfo

Parâmetro

Tipo

Descrição

key_id

String

ID de CMK.

domain_id

String

ID de domínio do usuário.

Código de status: 400

Tabela 6 Parâmetros de corpo da resposta

Parâmetro

Tipo

Descrição

error

Object

Mensagem de erro.

Tabela 7 ErrorDetail

Parâmetro

Tipo

Descrição

error_code

String

Código de erro.

error_msg

String

Informação de erro.

Código de status: 403

Tabela 8 Parâmetros de corpo da resposta

Parâmetro

Tipo

Descrição

error

Object

Mensagem de erro.

Tabela 9 ErrorDetail

Parâmetro

Tipo

Descrição

error_code

String

Código de erro.

error_msg

String

Informação de erro.

Exemplo de solicitações

{
  "key_alias" : "test"
}

Exemplo de respostas

Código de status: 200

Processamento da solicitação bem-sucedido.

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

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

Códigos de erro

Consulte Códigos de erro.