Compartilhar via


Controle de acesso para HSM Gerenciado

O HSM gerenciado do Azure Key Vault é um serviço de nuvem que protege as chaves de criptografia. Como esses dados são confidenciais e críticos para sua empresa, você precisa proteger seus HSMs (módulos de segurança de hardware gerenciados) permitindo que apenas aplicativos e usuários autorizados acessem os dados.

Este artigo apresenta uma visão geral do modelo de controle de acesso do HSM gerenciado. Explica a autenticação e a autorização e descreve como proteger o acesso ao seus HSMs gerenciados. Para obter diretrizes práticas de implementação, consulte Acesso seguro aos HSMs gerenciados.

Observação

O provedor de recursos do Azure Key Vault dá suporte a dois tipos de recursos: cofres e HSMs gerenciados. O controle de acesso descrito neste artigo aplica-se somente a HSMs gerenciados. Para saber mais sobre o controle de acesso para cofres do Key Vault, consulte Fornecer acesso a chaves, certificados e segredos do Key Vault com o controle de acesso baseado em função do Azure.

Modelo de controle de acesso

O acesso a um HSM gerenciado é controlado por meio de duas interfaces:

  • Painel de controle
  • Plano de dados

No plano de controle, você gerencia o HSM em si. As operações nesse plano incluem a criação e a exclusão de HSMs gerenciados e a recuperação de propriedades de HSM gerenciado.

No plano de dados, você trabalha com os dados armazenados em um HSM gerenciado. Ou seja, você trabalha com as chaves de criptografia com backup de HSM. Você pode adicionar, excluir, modificar e usar chaves para executar operações criptográficas, gerenciar atribuições de função para controlar o acesso às chaves, criar um backup completo do HSM, restaurar um backup completo e gerenciar o domínio de segurança da interface do plano de dados.

Para acessar um HSM gerenciado em qualquer plano, todos os chamadores devem ter a autenticação e a autorização adequadas. Autenticação estabelece a identidade do chamador. Autorização determina quais operações o chamador pode executar. Um chamador pode ser qualquer uma das entidades de segurança que são definidas no Microsoft Entra ID: usuário, grupo, entidade de serviço ou identidade gerenciada.

Ambos os planos usam a ID do Microsoft Entra para autenticação. Para autorização, eles usam sistemas diferentes:

  • O plano de controle usa o RBAC (controle de acesso baseado em função) do Azure, um sistema de autorização criado no Azure Resource Manager.
  • O plano de dados usa um RBAC no nível do HSM gerenciado (RBAC local do HSM gerenciado), que é um sistema de autorização implementado e imposto no nível do HSM gerenciado.

Quando um HSM gerenciado é criado, o solicitante fornece uma lista de administradores de plano de dados (todas as entidades de segurança têm suporte). Somente esses administradores podem acessar o plano de dados HSM gerenciado para executar operações-chave e gerenciar atribuições de função de plano de dados (RBAC local do HSM gerenciado).

Os modelos de permissões para ambos os planos usam a mesma sintaxe, mas são impostos em níveis diferentes e as atribuições de função usam escopos diferentes. O RBAC do Azure do painel de controle é imposto pelo Azure Resource Manager, e o RBAC local do plano de dados do HSM gerenciado é imposto pelo próprio HSM gerenciado.

Importante

Conceder acesso ao painel de controle a uma entidade de segurança não concede à entidade de segurança acesso ao plano de dados. Por exemplo, uma entidade de segurança com acesso ao painel de controle não tem automaticamente acesso a chaves ou atribuições de função do plano de dados. Esse isolamento é por design, para evitar a expansão inadvertida de privilégios que afetam o acesso a chaves armazenadas no HSM Gerenciado.

Porém há uma exceção: os membros da função Administrador Global do Microsoft Entra sempre podem adicionar usuários à função Administrador de HSM Gerenciado para fins de recuperação, como quando não há mais nenhuma conta de Administrador do HSM Gerenciado válida. Para obter mais informações, consulte as práticas recomendadas do Microsoft Entra ID para proteger a função de Administrador Global.

Por exemplo, um administrador de assinatura (porque eles têm permissões de Colaborador para todos os recursos na assinatura) pode excluir um HSM gerenciado em sua assinatura. Mas se eles não tiverem acesso ao plano de dados concedido por meio do RBAC local do HSM gerenciado, eles não poderão obter acesso a chaves ou gerenciar atribuições de função no HSM gerenciado para conceder a si mesmos ou a outras pessoas acesso ao plano de dados.

autenticação do Microsoft Entra

Ao cria um HSM gerenciado em uma assinatura do Azure, o HSM gerenciado é automaticamente associado ao locatário do Microsoft Entra da assinatura. Todos os chamadores em ambos os planos devem ser registrados nesse locatário e se autenticar para acessar o HSM gerenciado.

O aplicativo é autenticado com o Microsoft Entra ID antes de chamar qualquer um dos planos. O aplicativo pode usar qualquer método de autenticação com suporte, dependendo do tipo de aplicativo. O aplicativo adquire um token para um recurso no plano para conceder acesso. O recurso é um ponto de extremidade no painel de controle ou plano de dados, dependendo do ambiente do Azure. O aplicativo usa o token e envia uma solicitação de API REST para o ponto de extremidade HSM gerenciado. Para saber mais, examine todo fluxo de autenticação.

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

  • As organizações podem controlar centralmente o acesso a todos os HSMs gerenciados em sua organização.
  • Se um usuário sair da organização, ele perderá instantaneamente o acesso a todos os HSMs gerenciados na organização.
  • As organizações podem personalizar a autenticação usando opções na ID do Microsoft Entra, como habilitar a autenticação multifator para segurança adicional.

Pontos de extremidade do recurso

As entidades de segurança acessam os planos por meio de pontos de extremidade. Os controles de acesso para os dois aviões funcionam de forma independente. Para conceder a um aplicativo acesso para usar chaves em um HSM gerenciado, conceda acesso ao plano de dados usando o RBAC local do HSM gerenciado. Para conceder a um usuário acesso ao recurso HSM Gerenciado para criar, ler, excluir, mover os HSMs gerenciados e editar outras propriedades e marcas, use o RBAC do Azure.

A tabela a seguir mostra os pontos de extremidade do plano de controle e do plano de dados.

Plano de acesso Pontos de extremidade de acesso Operações Mecanismo de controle de acesso
Painel de controle Global:
management.azure.com:443
Criar, ler, atualizar, excluir e mover os HSMs gerenciados

Definir marcas de HSM gerenciado
Azure RBAC
Plano de dados Global:
<hsm-name>.managedhsm.azure.net:443
Chaves: Descriptografar, criptografar,
desembrulhar, encapsular, verificar, assinar, obter, listar, atualizar, criar, importar, excluir, fazer backup, restaurar, limpar

Gerenciamento de função do plano de dados (RBAC local do HSM gerenciado): listar definições de função, atribuir funções, excluir atribuições de função, definir funções personalizadas

Backup e restauração: fazer backup, restaurar, verificar o status de operações de backup e restauração

Domínio de segurança: baixar e carregar o domínio de segurança
RBAC local do HSM gerenciado

Plano de controle e RBAC do Azure

No plano de controle, você usa o RBAC do Azure para autorizar as operações que um chamador pode executar. No modelo de RBAC do Azure, cada assinatura do Azure tem uma instância do Microsoft Entra ID. Você pode conceder acesso a usuários, grupos e aplicativos desse diretório. O access é concedido para gerenciar recursos de assinatura que usam o modelo de implantação do Azure Resource Manager. Para conceder acesso, use o portal do Azure, a CLI do Azure, o Azure PowerShell ou APIs REST do Azure Resource Manager.

Crie um cofre de chaves em um grupo de recursos e gerencie o acesso usando o Microsoft Entra ID. Conceda a usuários ou grupos a capacidade de gerenciar os cofres de chaves em um grupo de recursos. Conceda o acesso em um nível de escopo específico atribuindo funções do Azure apropriadas. Para conceder acesso a um usuário para gerenciar os cofres de chaves, atribua uma função key vault Contributor 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:

  • Grupo de gerenciamento: uma função do Azure atribuída no nível da assinatura se aplica a todas as assinaturas nesse grupo de gerenciamento.
  • Assinatura: uma função do Azure atribuída no nível da assinatura se aplica a todos os grupos de recursos e recursos nessa assinatura.
  • Grupo de recursos: uma função do Azure atribuída no nível do grupo de recursos que se aplica a todos os recursos nesse grupo de recursos.
  • Recursos específicos: uma função do Azure atribuída a um recurso específico que se aplica a esse recurso. Nesse caso, o recurso é um cofre de chaves específico.

Várias funções são predefinidas. Se uma função predefinida não atender às suas necessidades, você poderá definir sua própria função. Para obter mais informações, confira Funções internas do Azure RBAC.

Plano de dados e RBAC local de HSM gerenciado

Atribuindo uma função, você concede um acesso de entidade de segurança para executar operações de chave específicas. Para cada atribuição de função, você deve especificar uma função e um escopo para o qual essa atribuição se aplica. Para RBAC local do HSM gerenciado, dois escopos estão disponíveis:

  • / ou /keys: escopo no nível do HSM. As entidades de segurança atribuídas a uma função nesse escopo podem executar as operações definidas na função para todos os objetos (chaves) no HSM gerenciado.
  • /keys/<key-name>: escopo de nível de chave. As entidades de segurança atribuídas a uma função nesse escopo podem executar as operações definidas nessa função apenas para todas as versões da chave especificada.

O RBAC local do HSM gerenciado tem várias funções internas para lidar com diferentes cenários de controle de acesso. Para obter a lista completa de funções e suas permissões, confira Funções internas de RBAC local do HSM gerenciado para HSM gerenciado.

Microsoft Entra Privileged Identity Management (PIM)

Para aprimorar a segurança das funções administrativas, use PIM (Microsoft Entra Privileged Identity Management). O PIM permite o acesso just-in-time, reduzindo o risco de privilégios administrativos permanentes. Ele também fornece visibilidade sobre atribuições de função e impõe fluxos de trabalho de aprovação para acesso elevado.

Separação de tarefas e controle de acesso

É uma prática recomendada de segurança separar as funções entre as funções de equipe e conceder apenas o acesso mínimo necessário para funções de trabalho específicas. Esse princípio ajuda a impedir o acesso não autorizado e limita o impacto potencial de ações acidentais ou mal-intencionadas.

Ao implementar o controle de acesso para HSM gerenciado, considere estabelecer estas funções funcionais comuns:

  • Equipe de segurança: precisa de permissões para gerenciar o HSM, controlar ciclos de vida de chaves e definir as configurações de controle de acesso.
  • Desenvolvedores de aplicativos: precisa de referências a chaves sem exigir acesso direto ao HSM.
  • Serviço/código: precisa de permissões para executar operações de criptografia específicas e, ao mesmo tempo, ser restringida de funções de gerenciamento de chaves mais amplas.
  • Auditores: precisa de recursos de monitoramento e acesso de log sem permissões para modificar as configurações ou chaves do HSM.

Essas funções conceituais devem receber apenas as permissões específicas necessárias para executar suas responsabilidades. A implementação da separação de funções exige atribuições de função do painel de controle (Azure RBAC) e do plano de dados (RBAC local do HSM gerenciado).

Para obter um tutorial detalhado sobre como implementar a separação de tarefas com exemplos específicos e comandos da CLI do Azure, consulte Acesso seguro aos HSMs gerenciados.

Próximas etapas