Segurança do Azure Key Vault

Concluído

O Azure Key Vault protege chaves criptográficas, certificados (e as chaves privadas associadas aos certificados) e segredos (como cadeias de conexão e senhas) na nuvem. Ao armazenar dados confidenciais e críticos para os negócios, no entanto, você deve tomar medidas para maximizar a segurança de seus cofres e dos dados armazenados neles.

Segurança da rede

Você pode reduzir a exposição dos seus repositórios especificando quais endereços IP têm acesso a eles. Os pontos de extremidade do serviço de rede virtual para o Cofre da Chave do Azure permitem restringir o acesso a uma rede virtual especificada. Os endpoints também permitem que restrinja o acesso a uma lista de intervalos de endereços IPv4 (protocolo da Internet versão 4). Qualquer utilizador que se conecte ao seu cofre de chaves vindo de fora dessas fontes tem o acesso negado.

Depois que as regras de firewall estiverem em vigor, os usuários só poderão ler dados do Cofre de Chaves quando suas solicitações tiverem origem em redes virtuais permitidas ou intervalos de endereços IPv4. Isso também se aplica ao acesso ao Cofre da Chave a partir do portal do Azure. Embora os usuários possam navegar até um cofre de chaves no portal do Azure, talvez não consigam listar chaves, segredos ou certificados se a máquina cliente não estiver na lista de permissões.

O Serviço de Link Privado do Azure permite que você acesse o Cofre da Chave do Azure e os serviços de cliente/parceiro hospedados pelo Azure em um Ponto de Extremidade Privado em sua rede virtual. Um Endpoint Privado do Azure é uma interface de rede que o conecta de forma privada e segura a um serviço fornecido pelo Azure Private Link. O ponto de extremidade privado usa um endereço IP privado da sua rede virtual, trazendo efetivamente o serviço para a sua rede virtual. Todo o tráfego para o serviço pode ser roteado através do ponto de extremidade privado, portanto, não são necessários gateways, dispositivos NAT (conversão de endereços de rede), conexões ExpressRoute ou VPN ou endereços IP públicos. O tráfego entre a sua rede virtual e o serviço atravessa a rede de backbone da Microsoft, eliminando a exposição da Internet pública. Você pode se conectar a uma instância de um recurso do Azure, oferecendo o mais alto nível de granularidade no controle de acesso.

Transport Layer Security (TLS) e Hypertext Transfer Protocol Secure (HTTPS)

O front-end do Cofre da Chave (plano de dados) é um servidor multilocatário. Isso significa que cofres de chaves de clientes diferentes podem compartilhar o mesmo endereço IP público. Para obter isolamento, cada solicitação HTTP é autenticada e autorizada independentemente de outras solicitações.

O protocolo HTTPS permite que o cliente participe da negociação TLS. Os clientes podem impor a versão do TLS e, sempre que um cliente fizer isso, toda a conexão usará a proteção de nível correspondente. O Key Vault suporta as versões do protocolo TLS 1.2 e 1.3.

Opções de autenticação do Cofre da Chave

Quando cria um cofre de chaves numa subscrição do Azure, este é automaticamente associado ao locatário Microsoft Entra da subscrição. Todos os chamadores em ambos os planos devem se registrar neste locatário e autenticar-se para acessar o cofre de chaves. Em ambos os casos, os aplicativos podem acessar o Key Vault de três maneiras:

  • Somente aplicativo: o aplicativo representa uma entidade de serviço ou identidade gerenciada. Essa identidade é o cenário mais comum para aplicativos que precisam acessar periodicamente certificados, chaves ou segredos do cofre de chaves. Para que esse cenário funcione, o objectId do aplicativo deve ser especificado na política de acesso e o applicationId não deve ser especificado ou deve ser nulo.
  • Apenas o usuário: O usuário acessa o cofre de chaves de qualquer aplicativo registado no tenant. Exemplos desse tipo de acesso incluem o Azure PowerShell e o portal do Azure. Para que esse cenário funcione, o objectId do usuário deve ser especificado na política de acesso e o applicationId não deve ser especificado ou deve ser nulo.
  • Application-plus-user (às vezes referido como identidade composta): O utilizador é obrigado a aceder ao Key Vault a partir de uma aplicação específica e a aplicação deve usar o fluxo de autenticação em nome de (OBO) para representar o utilizador. Para que esse cenário funcione, applicationId e objectId devem ser especificados na política de acesso. O applicationId identifica o aplicativo necessário e o objectId identifica o usuário. Atualmente, essa opção não está disponível para o plano de dados Azure RBAC.

Em todos os tipos de acesso, o aplicativo é autenticado com o Microsoft Entra ID. O aplicativo usa qualquer método de autenticação suportado com base no tipo de aplicativo. O aplicativo adquire um token para um recurso no plano para conceder acesso. O recurso é um ponto de extremidade no plano de gestão ou de dados do ambiente do Azure. O aplicativo usa o token e envia uma solicitação de API REST para o Cofre de Chaves.

O modelo de um único mecanismo de autenticação para ambos os planos tem vários benefícios:

  • As organizações podem controlar o acesso centralmente a todos os cofres de chaves em sua organização.
  • Se um utilizador sair, perde instantaneamente o acesso a todos os repositórios de chaves na organização.
  • As organizações podem personalizar a autenticação usando as opções do Microsoft Entra ID, como habilitar a autenticação multifator para maior segurança.

Visão geral do modelo de acesso

O acesso a um cofre de chaves é controlado através de duas interfaces: o plano de gestão e o plano de dados. O plano de gerenciamento é onde você gerencia o próprio Cofre de Chaves. As operações neste plano incluem a criação e exclusão de cofres de chaves, a recuperação de propriedades do Cofre de Chaves e a atualização de políticas de acesso. O plano de dados é onde se trabalha com os dados armazenados em um cofre de chaves criptográficas. Você pode adicionar, excluir e modificar chaves, segredos e certificados.

Ambos os planos usam o Microsoft Entra ID para autenticação. Para autorização, o plano de gestão usa o controlo de acesso baseado em funções do Azure (Azure RBAC) e o plano de dados usa uma política de acesso do Key Vault e o Azure RBAC para operações no plano de dados do Key Vault.

Para acessar um cofre de chaves em qualquer plano, todos os chamadores (usuários ou aplicativos) devem ter autenticação e autorização adequadas. A autenticação estabelece a identidade do chamador. A autorização determina quais operações o chamador pode executar. A autenticação com o Cofre da Chave funciona em conjunto com o Microsoft Entra ID, que é responsável por autenticar a identidade de qualquer entidade de segurança.

Uma entidade de segurança é um objeto que representa um usuário, grupo, serviço ou aplicativo que está solicitando acesso aos recursos do Azure. O Azure atribui uma ID de objeto exclusiva a cada entidade de segurança.

  • Um principal de segurança de utilizador identifica um indivíduo que tem um perfil no Microsoft Entra ID.
  • Um principal de segurança de grupo identifica um conjunto de utilizadores criados no Microsoft Entra ID. Quaisquer funções ou permissões atribuídas ao grupo são concedidas a todos os usuários dentro do grupo.
  • Uma entidade de serviço é um tipo de entidade de segurança que identifica um aplicativo ou serviço, ou seja, uma parte do código em vez de um usuário ou grupo. O ID de objeto de uma entidade de serviço é conhecido como seu ID de cliente e age como seu nome de usuário. O segredo do cliente ou o certificado da entidade de serviço atua como a sua senha. Muitos Serviços do Azure dão suporte à atribuição de Identidade Gerenciada com gerenciamento automatizado de ID de cliente e certificado. A identidade gerenciada é a opção mais segura e recomendada para autenticação no Azure.

Acesso condicional

O Key Vault fornece suporte para políticas de Acesso Condicional do Microsoft Entra. Usando políticas de Acesso Condicional, você pode aplicar os controles de acesso corretos ao Cofre de Chaves quando necessário para manter sua organização segura e ficar longe do caminho do usuário quando não for necessário.

Acesso privilegiado

A autorização determina quais operações o chamador pode executar. A autorização no Cofre de Chaves utiliza o controlo de acesso baseado em funções do Azure (Azure RBAC) no plano de gestão e as políticas de acesso do Azure RBAC ou do Cofre de Chaves do Azure no plano de dados.

O acesso aos cofres ocorre por meio de duas interfaces ou planos. Esses planos são o plano de gerenciamento e o plano de dados.

  • O plano de gerenciamento é onde você gerencia o próprio Cofre da Chave e é a interface usada para criar e excluir cofres. Você também pode ler as propriedades do cofre de chaves e gerenciar políticas de acesso.
  • O plano de dados permite trabalhar com os dados armazenados num cofre de chaves. Você pode adicionar, excluir e modificar chaves, segredos e certificados.

Os aplicativos acessam os planos por meio de endpoints. Os controles de acesso para os dois planos funcionam de forma independente. Para conceder a um aplicativo acesso para usar chaves em um cofre de chaves, concede-se acesso ao plano de dados usando o RBAC do Azure ou uma política de acesso do Cofre de Chaves. Para conceder a um usuário acesso de leitura às propriedades e tags do Cofre da Chave, mas não acesso a dados (chaves, segredos ou certificados), conceda acesso ao plano de gerenciamento com o RBAC do Azure.

Plano de acesso Pontos de extremidade de acesso Operações Mecanismo de controlo de acessos
Plano de gestão Global:
management.azure.com:443

Microsoft Azure operado pela 21Vianet:
management.chinacloudapi.cn:443

Azure Governo dos EUA:
management.usgovcloudapi.net:443

Azure Alemanha:
management.microsoftazure.de:443
Criar, ler, atualizar e excluir cofres de chaves

Definir políticas de acesso ao Cofre da Chave

Definir etiquetas do Cofre de Chaves
Azure RBAC
Plano de dados Global:
<nome do cofre>.vault.azure.net:443

Microsoft Azure operado pela 21Vianet:
<nome do cofre>.vault.azure.cn:443

Azure US Government:
<nome do cofre>.vault.usgovcloudapi.net:443

Azure Alemanha:
<nome do cofre>.vault.microsoftazure.de:443
Chaves: encriptar, desencriptar, wrapKey, unwrapKey, assinar, verificar, obter, listar, criar, atualizar, importar, eliminar, recuperar, fazer backup, restaurar, limpar, girar (pré-visualização), getrotationpolicy (pré-visualização), setrotationpolicy (pré-visualização), release(pré-visualização)

Certificados: gerenciar contatos, getissuers, listar emissores, definir emissores, excluir emissores, gerenciar emissores, obter, listar, criar, importar, atualizar, excluir, recuperar, fazer backup, restaurar, limpar

Segredos: obter, listar, definir, excluir, recuperar, fazer backup, restaurar, limpar
Política de acesso ao Cofre de Chaves ou RBAC do Azure

Gerenciando o acesso administrativo ao Cofre da Chave

Ao criar um cofre de chaves em um grupo de recursos, você gerencia o acesso usando a ID do Microsoft Entra. Você concede aos usuários ou grupos a capacidade de gerenciar os cofres de chaves em um grupo de recursos. Você pode conceder acesso em um nível de escopo específico atribuindo as funções apropriadas do Azure. Para conceder acesso a um usuário para gerenciar cofres de chaves, atribua uma função de Colaborador do cofre de chaves predefinida ao usuário em um escopo específico. Os seguintes níveis de escopo podem ser atribuídos a uma função do Azure:

  • Assinatura: uma função do Azure atribuída no nível de assinatura se aplica a todos os grupos de recursos e recursos dentro dessa assinatura.
  • Grupo de recursos: uma função do Azure atribuída no nível do grupo de recursos aplica-se a todos os recursos desse grupo de recursos.
  • Recurso específico: uma função do Azure atribuída a um recurso específico aplica-se a esse recurso. Nesse caso, o recurso é um cofre de chaves específico.

Ao usar o modelo de permissão de Política de Acesso, se um utilizador tiver permissões Contributor para o plano de gestão do Cofre de Chaves, o utilizador pode conceder a si próprio acesso ao plano de dados, definindo uma política de acesso ao Cofre de Chaves. Você deve controlar rigorosamente quem tem acesso ao papel Contributor aos seus cofres de chaves, utilizando o modelo de permissões de Política de Acesso, para garantir que apenas pessoas autorizadas possam acessar e gerir os seus cofres de chaves, bem como as chaves, segredos e certificados. Recomenda-se usar o novo modelo de permissão RBAC (Controle de Acesso Baseado em Função) para evitar esse problema. Com o modelo de permissão RBAC, o gerenciamento de permissões é limitado às funções 'Proprietário' e 'Administrador de Acesso de Usuário', o que permite a separação de funções entre funções para operações de segurança e operações administrativas gerais.

Controlando o acesso aos dados do Key Vault

Você pode controlar o acesso a chaves, certificados e segredos do Cofre da Chave usando o RBAC do Azure ou as políticas de acesso do Cofre da Chave.

Registo e monitorização

Os registos do Key Vault guardam informações sobre as atividades realizadas no seu cofre.

Você pode integrar o Cofre da Chave com a Grade de Eventos para ser notificado quando o status de uma chave, certificado ou segredo armazenado no Cofre de Chaves for alterado.

Também é importante monitorizar a condição do cofre de chaves, para garantir que o serviço funcione como pretendido.

Backup e recuperação

A proteção de exclusão e limpeza suave do Azure Key Vault permite recuperar cofres e objetos de cofre excluídos.

Você também deve fazer backups regulares do seu cofre ao atualizar/excluir/criar objetos dentro de um cofre.