Criação de um segredo
Função
Essa API é usada para criar um segredo e armazenar o valor de segredo na versão de segredo inicial.
Valores de segredo são criptografados e armazenados em versões de segredo. Uma versão pode ter vários status. Versões sem nenhum status são consideradas versões obsoletas e podem ser excluídas automaticamente pelo CSMS.
A versão inicial é marcada pela tag de status SYSCURRENT.
Restrições
Você pode usar uma chave principal de cliente (CMK) simétrica para criptografar um segredo. Se o parâmetro kms_key_id não for especificado, a chave principal padrão csms/default será usada para criptografar segredos. A chave padrão é criada automaticamente pelo CSMS.
Para usar uma chave definida pelo usuário para criptografar segredos, você precisa ter a permissão kms:dek:create para a chave.
URI
POST /v1/{project_id}/secrets
| 
        Parâmetro  | 
      
        Obrigatório  | 
      
        Tipo  | 
      
        Descrição  | 
     
|---|---|---|---|
| 
        project_id  | 
      
        Sim  | 
      
        String  | 
      
        ID do projeto  | 
     
Parâmetro de solicitação
| 
        Parâmetro  | 
      
        Obrigatório  | 
      
        Tipo  | 
      
        Descrição  | 
     
|---|---|---|---|
| 
        X-Auth-Token  | 
      
        Sim  | 
      
        String  | 
      
        Token do usuário. Ele pode ser obtido chamando a API do IAM (valor de X-Subject-Token no cabeçalho da resposta).  | 
     
| 
        Parâmetro  | 
      
        Obrigatório  | 
      
        Tipo  | 
      
        Descrição  | 
     
|---|---|---|---|
| 
        name  | 
      
        Sim  | 
      
        String  | 
      
        Nome de segredo. Restrição: o valor pode conter de 1 a 64 caracteres e deve corresponder à expressão regular ^[a-zA-Z0-9._-]{1,64}$.  | 
     
| 
        kms_key_id  | 
      
        Não  | 
      
        String  | 
      
        ID da CMK do KMS usado para criptografar segredos. Se este parâmetro não for especificado, a chave principal padrão csms/default será usada. A chave padrão é criada automaticamente pelo CSMS.  | 
     
| 
        description  | 
      
        Não  | 
      
        String  | 
      
        Descrição de um segredo. Restrições: o valor contém 2048 bytes.  | 
     
| 
        secret_binary  | 
      
        Não  | 
      
        String  | 
      
        Texto não criptografado de um segredo binário no formato Base64. O CSMS o criptografa e o armazena na versão inicial do segredo. Tipo: objeto de dados binários no formato Base64 Restrições: você deve configurar um e somente um de secret_binary e secret_string. O tamanho máximo é de 32 KB.  | 
     
| 
        secret_string  | 
      
        Não  | 
      
        String  | 
      
        Texto não criptografado de um segredo binário em formato de texto. O CSMS o criptografa e o armazena na versão inicial do segredo. Restrições: você deve configurar um e somente um de secret_binary e secret_string. O tamanho máximo é de 32 KB.  | 
     
Parâmetros de resposta
Código de status: 200
| 
        Parâmetro  | 
      
        Tipo  | 
      
        Descrição  | 
     
|---|---|---|
| 
        secret  | 
      
        Secret object  | 
      
        Segredo  | 
     
| 
        Parâmetro  | 
      
        Tipo  | 
      
        Descrição  | 
     
|---|---|---|
| 
        id  | 
      
        String  | 
      
        ID do segredo  | 
     
| 
        name  | 
      
        String  | 
      
        Nome de segredo  | 
     
| 
        state  | 
      
        String  | 
      
        Status de segredo. Seu valor pode ser: ENABLED DISABLED PENDING_DELETE FROZEN  | 
     
| 
        kms_key_id  | 
      
        String  | 
      
        ID da CMK do KMS usado para criptografar valores do segredo  | 
     
| 
        description  | 
      
        String  | 
      
        Descrição de um segredo  | 
     
| 
        create_time  | 
      
        Long  | 
      
        Tempo de criação do segredo. O carimbo de data/hora indica o total de segundos após o início da data da época (1º de janeiro de 1970).  | 
     
| 
        update_time  | 
      
        Long  | 
      
        Hora em que um segredo foi atualizado pela última vez. O carimbo de data/hora indica o total de segundos após o início da data da época (1º de janeiro de 1970).  | 
     
| 
        scheduled_delete_time  | 
      
        Long  | 
      
        Hora em que um segredo será excluído conforme programado. O carimbo de data/hora indica o total de segundos após o início da data da época (1º de janeiro de 1970). Se um segredo não estiver no estado Pending deletion, o valor deste parâmetro é null.  | 
     
Código de status: 400
| 
        Parâmetro  | 
      
        Tipo  | 
      
        Descrição  | 
     
|---|---|---|
| 
        error_code  | 
      
        String  | 
      
        Código de erro  | 
     
| 
        error_msg  | 
      
        String  | 
      
        Descrição do erro  | 
     
Exemplo de solicitação
{
  "name" : "demo",
  "kms_key_id" : "0d0466b0-e727-4d9c-b35d-f84bb474a37f",
  "secret_string" : "this is a demo secret string"
}
 Exemplo de resposta
Código de status: 200
O pedido foi bem-sucedido.
{
  "secret" : {
    "id" : "bb6a3d22-dc93-47ac-b5bd-88df7ad35f1e",
    "name" : "test",
    "state" : "ENABLED",
    "kms_key_id" : "b168fe00ff56492495a7d22974df2d0b",
    "description" : "description",
    "create_time" : 1581507580000,
    "update_time" : 1581507580000,
    "scheduled_delete_time" : 1581507580000
  }
}
 Código de status
| 
        Código de status  | 
      
        Descrição  | 
     
|---|---|
| 
        200  | 
      
        O pedido foi bem-sucedido.  | 
     
| 
        400  | 
      
        Parâmetros de solicitação inválidos.  | 
     
Código de erro
Para obter detalhes, consulte Códigos de erro.