Sobre os segredos do Azure Key Vault

O Key Vault fornece armazenamento seguro de segredos genéricos, como senhas e cadeias de conexão de banco de dados.

Da perspectiva do desenvolvedor, APIs Key Vault aceitam e retornam valores do segredo como cadeias de caracteres. Internamente, o Key Vault armazena e gerencia os segredos como sequências de octetos (bytes de 8 bits), com um tamanho máximo de 25k bytes cada. O serviço Key Vault não fornece a semântica para segredos. Ele simplesmente aceita os dados, criptografa-os, armazena-os e retorna um identificador secreto (id). O identificador pode ser usado para recuperar o segredo em um momento posterior.

Para dados altamente confidenciais, os clientes devem considerar camadas extras de proteção de dados. Criptografar dados usando uma chave de proteção separada antes do armazenamento no Key Vault é um exemplo.

O Key Vault também oferece suporte a um campo contentType para segredos. Os clientes podem especificar o tipo de conteúdo de um segredo para ajudar a interpretar os dados do segredo quando ele for recuperado. O comprimento máximo deste campo é de 255 caracteres. O uso sugerido é como uma dica para interpretar os dados de secredos. Por exemplo, uma implementação pode armazenar senhas e certificados como segredos e usar esse campo para fazer a diferenciação. Não existem valores predefinidos.

Criptografia

Todos os segredos em seu Key Vault são armazenados criptografados. O Key Vault criptografa segredos em repouso com uma hierarquia de chaves de criptografia, com todas as chaves nessa hierarquia protegidas por módulos que são compatíveis com o FIPS 140-2. Essa criptografia é transparente e não requer nenhuma ação do usuário. O serviço do Azure Key Vault criptografa seus segredos quando você os adiciona e os descriptografa automaticamente ao lê-los.

A chave de folha de criptografia da hierarquia de chaves é exclusiva para cada cofre de chaves. A chave raiz de criptografia da hierarquia de chaves é exclusiva do mundo de segurança e seu nível de proteção varia entre regiões:

  • China: a chave raiz é protegida por um módulo validado para FIPS 140-2 Nível 1.
  • Outras regiões: a chave raiz é protegida por um módulo validado para FIPS 140-2 Nível 2 ou superior.

Atributos de segredos

Além dos dados de segredo, os seguintes atributos podem ser especificados:

  • exp: IntDate, opcional, o padrão é infinito. O atributo exp (tempo de expiração) identifica o tempo de expiração em que ou depois que os dados de segredo NÃO DEVEM ser recuperados, exceto em determinadas situações. Esse campo é para fins informativos somente, visto que ele informa os usuários do serviço de cofre de que um segredo específico não pode ser usado. Seu valor DEVE ser um número que contenha um valor de IntDate.
  • nbf: IntDate, opcional, o padrão é agora. O atributo nbf (not before) identifica o tempo anterior que os dados de segredo NÃO DEVEM ser recuperados, exceto em determinadas situações. Este documento serve apenas para fins informativos. Seu valor DEVE ser um número que contenha um valor de IntDate.
  • habilitado: booliano, opcional, o padrão é true. Esse atributo especifica se os dados do segredo podem ser recuperados. O atributo habilitado é usado com nbf e exp quando ocorre uma operação entre nbf e exp. Isso só será permitido se habilitado estiver definido como true. As operações fora da janela nbf e exp são automaticamente não permitidas, exceto em determinadas situações.

Há mais atributos somente leitura que serão incluídos em qualquer resposta que inclua os atributos de segredo:

  • criado: IntDate, opcional. O atributo criado indica quando esta versão do segredo foi criada. Esse valor é nulo para segredos criados antes da adição deste atributo. Seu valor deve ser um número que contenha um valor de IntDate.
  • atualizado: IntDate, opcional. O atributo atualizado indica quando esta versão do segredo foi atualizada. Esse valor é nulo para segredos que foram atualizados antes da adição deste atributo. Seu valor deve ser um número que contenha um valor de IntDate.

Para obter informações sobre atributos comuns para cada tipo de objeto do cofre de chaves, confira a Visão geral das chaves, dos segredos e dos certificados do Azure Key Vault

Operações de data e hora controladas

Uma operação obter do segredo funcionará para segredos ainda não válidos e expirados, fora da janela nbf / exp. Chamar uma operação obter do segredo, para um segredo ainda não válido, pode ser usada para fins de teste. Recuperar (obter) um segredo expirado, pode ser usado para operações de recuperação.

Controle de acesso a segredo

O Controle de Acesso para segredos gerenciados pelo Key Vault é fornecido no nível do Key Vault que atua como o contêiner desses segredos. A política de controle de acesso para segredos é diferente da política de controle de acesso para chaves no mesmo Key Vault. Os usuários podem criar um ou mais cofres para armazenar segredos e são solicitados a manter a segmentação e gerenciamento de segredos apropriados do cenário.

As seguintes permissões podem ser usadas, por entidade de segurança, na entrada de controle de acesso segredos em um cofre e refletem com maior exatidão as operações permitidas em um objeto de segredo:

  • Permissões para operações de gerenciamento de segredos

    • get: ler um segredo
    • list: listar os segredos ou versões de um segredo armazenado em um Key Vault
    • set: criar um segredo
    • delete: excluir um segredo
    • recover: recuperar um segredo excluído
    • backup: fazer backup de um segredo em um cofre de chaves
    • restore: restaurar um backup do segredo em um cofre de chaves
  • Permissões para operações com privilégio

    • limpar: Limpar (exclui permanentemente) um segredo excluído

Para obter mais informações sobre como trabalhar com segredos, veja Operações de segredo na referência de API REST do Key Vault. Para obter informações sobre como estabelecer permissões, confira Cofres – criar ou atualizar e Cofres – atualizar política de acesso.

Guias de instruções para controlar o acesso no Key Vault:

Marcas de segredos

Você pode especificar mais metadados específicos do aplicativo na forma de marcas. O Key Vault oferece suporte a até 15 marcas, cada uma delas pode ter um nome de 512 caracteres e um valor de 512 caracteres.

Observação

As marcas são legíveis por um chamador se ele tem a permissão Listar ou Obter.

Cenários de uso

Quando usar Exemplos
Armazene, gerencie o ciclo de vida e monitore as credenciais para comunicação de serviço a serviço, como senhas, chaves de acesso, segredos do cliente da entidade de serviço. - Usar o Azure Key Vault com uma Máquina Virtual
- Usar o Azure Key Vault com um Aplicativo Web do Azure

Próximas etapas