Autenticação do Azure Key Vault

Concluído

A autenticação com o Key Vault funciona em conjunto com o Microsoft Entra ID, que é responsável por autenticar a identidade de qualquer principal de segurança específico.

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.

  • Uma entidade de segurança de usuário identifica um indivíduo que tem um perfil no Microsoft Entra ID.
  • Uma entidade de segurança de grupo identifica um conjunto de usuários 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 age como seu nome de usuário; O segredo do cliente da entidade de serviço funciona como sua senha.

Para aplicativos, há duas maneiras de obter uma entidade de serviço:

  • Recomendado: habilite uma identidade gerenciada atribuída ao sistema para o aplicativo. Com a identidade gerenciada, o Azure gerencia internamente a entidade de serviço do aplicativo e autentica automaticamente o aplicativo com outros serviços do Azure. A identidade gerenciada está disponível para aplicativos implantados em uma variedade de serviços.
  • Se não puder usar a identidade gerenciada, registre o aplicativo com seu locatário do Microsoft Entra, conforme descrito em Guia de início rápido: registrar um aplicativo com a plataforma de identidade do Azure. O registro também cria um segundo objeto de aplicativo que identifica o aplicativo em todos os locatários.

Configurar o firewall do Cofre da Chave

Por padrão, o Cofre da Chave permite o acesso a recursos por meio de endereços IP públicos. Para maior segurança, você também pode restringir o acesso a intervalos IP específicos, pontos de extremidade de serviço, redes virtuais ou pontos de extremidade privados.

O fluxo de operação de solicitação do Cofre da Chave com autenticação

A autenticação do Cofre da Chave ocorre como parte de cada operação de solicitação no Cofre da Chave. Uma vez recuperado, o token pode ser reutilizado para chamadas subsequentes. Exemplo de fluxo de autenticação:

  1. Um token solicita autenticação com o Microsoft Entra ID, por exemplo:

    • Um recurso do Azure, como uma máquina virtual ou um aplicativo do Serviço de Aplicativo com uma identidade gerenciada, entra em contato com o ponto de extremidade REST para obter um token de acesso.
    • Um usuário faz logon no portal do Azure usando um nome de usuário e senha.
  2. Se a autenticação com o Microsoft Entra ID for bem-sucedida, a entidade de segurança receberá um token OAuth.

  3. Uma chamada para a API REST do Cofre da Chave por meio do ponto de extremidade (URI) do Cofre da Chave.

  4. O Key Vault Firewall verifica os seguintes critérios. Se algum critério for atendido, a chamada é permitida. Caso contrário, a chamada é bloqueada e uma resposta proibida é retornada.

    • A firewall está desativada e o ponto de extremidade público do Cofre da Chave pode ser acedido a partir da Internet pública.
    • O chamador é um Serviço Confiável do Cofre de Chaves, permitindo que ele ignore o firewall.
    • O chamador é listado no firewall por endereço IP, rede virtual ou ponto de extremidade de serviço.
    • O chamador pode acessar o Cofre da Chave através de uma conexão de link privado configurada.
  5. Se o firewall permitir a chamada, o Cofre da Chave chamará o ID do Microsoft Entra para validar o token de acesso da entidade de segurança.

  6. O Cofre da Chave verifica se a entidade de segurança tem a permissão necessária para a operação solicitada. Caso contrário, o Cofre da Chave devolve uma resposta proibida.

  7. Key Vault executa a operação solicitada e retorna o resultado.

Diagrama mostrando um exemplo do processo para um aplicativo chamando uma chamada de interface de programação de aplicativo Get Secret do Key Vault.

Nota

Os clientes SDK do Cofre da Chave para segredos, certificados e chaves fazem uma chamada adicional para o Cofre da Chave sem token de acesso, o que resulta na resposta 401 para recuperar informações do locatário.

Autenticação no Cofre da Chave no código do aplicativo

O SDK do Cofre da Chave está usando a biblioteca de cliente do Azure Identity, que permite a autenticação contínua no Cofre da Chave em ambientes com o mesmo código

Bibliotecas de cliente do Azure Identity

.NET Python Java JavaScript
Azure Identity SDK .NET Azure Identity SDK Python Azure Identity SDK Java Azure Identity SDK JavaScript