Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Saiba como a federação de identidade de carga de trabalho permite acesso seguro aos recursos protegidos do Microsoft Entra sem gerenciar segredos. Este artigo fornece uma visão geral de seus benefícios e cenários com suporte.
Você pode usar a federação de identidade de carga de trabalho em cenários como GitHub Actions, cargas de trabalho em execução no Kubernetes ou cargas de trabalho em execução em plataformas de computação fora do Azure.
Por que usar a federação de identidade de carga de trabalho?
Assista a este vídeo para saber por que você usaria a federação de identidade de carga de trabalho.
Normalmente, uma carga de trabalho de software (como um aplicativo, serviço, script ou aplicativo baseado em contêiner) precisa de uma identidade para se autenticar e acessar recursos ou para se comunicar com outros serviços. Quando essas cargas de trabalho são executadas no Azure, você pode usar identidades gerenciadas e a plataforma do Azure gerencia as credenciais para você. Para uma carga de trabalho de software em execução fora do Azure, ou aquelas em execução no Azure, mas que usam registros de aplicativo para suas identidades, você precisa usar credenciais de aplicativo (um segredo ou certificado) para acessar recursos protegidos pelo Microsoft Entra (como Azure, Microsoft Graph, Microsoft 365 ou recursos de terceiros). Essas credenciais representam um risco de segurança e precisam ser armazenadas com segurança e trocadas regularmente. Você também corre o risco do tempo de inatividade do serviço se as credenciais expirarem.
Você usa a federação de identidade de carga de trabalho para configurar uma identidade gerenciada atribuída pelo usuário ou um registro de aplicativo na ID do Microsoft Entra para confiar em tokens de um IdP (provedor de identidade externo), como o GitHub ou o Google. A identidade gerenciada atribuída pelo usuário ou o registro de aplicativo no Microsoft Entra ID se torna uma identidade para cargas de trabalho de software em execução, por exemplo, em Kubernetes locais ou fluxos de trabalho do GitHub Actions. Quando essa relação de confiança é criada, sua carga de trabalho de software externa troca tokens confiáveis do IdP externo por tokens de acesso da plataforma de identidade da Microsoft. A carga de trabalho do software usa esse token de acesso para acessar os recursos protegidos do Microsoft Entra aos quais a carga de trabalho recebeu acesso. Você elimina a carga de manutenção do gerenciamento manual de credenciais e elimina o risco de vazamento de segredos ou de expiração de certificados.
Cenários com suporte
Os seguintes cenários têm suporte para acessar recursos protegidos do Microsoft Entra usando a federação de identidade de carga de trabalho:
- Carga de trabalho em execução em qualquer cluster do Kubernetes (Serviço de Contêiner do Azure (AKS), Amazon Web Services EKS, Google Kubernetes Engine(GKE) ou local). Estabeleça uma relação de confiança entre a identidade gerenciada atribuída pelo usuário ou o aplicativo no Microsoft Entra ID e uma carga de trabalho do Kubernetes (descrita na visão geral da identidade de carga de trabalho).
- GitHub Actions. Primeiro, configure uma relação de confiança entre a identidade gerenciada atribuída pelo usuário ou o aplicativo na ID do Microsoft Entra e um repositório GitHub no Centro de administração do Microsoft Entra ou usando o Microsoft Graph. Em seguida, configure um fluxo de trabalho do GitHub Actions para obter um token de acesso do provedor de identidade da Microsoft e acessar os recursos do Azure.
- Cargas de trabalho em execução em plataformas de computação do Azure usando identidades de aplicativo. Primeiro atribua uma identidade gerenciada atribuída pelo usuário à sua VM do Azure ou ao Serviço de Aplicativo. Em seguida, configure uma relação de confiança entre seu aplicativo e a identidade atribuída pelo usuário.
- Google Cloud. Primeiro, configure uma relação de confiança entre a identidade gerenciada atribuída pelo usuário ou o aplicativo no Microsoft Entra ID e uma identidade no Google Cloud. Em seguida, configure sua carga de trabalho de software em execução no Google Cloud para obter um token de acesso do provedor de identidade da Microsoft e acessar os recursos protegidos do Microsoft Entra. Veja Acessar os recursos protegidos do Microsoft Entra a partir de um aplicativo no Google Cloud.
- Cargas de trabalho em execução na Amazon Web Services (AWS). Primeiro, configure uma relação de confiança entre a identidade gerenciada atribuída pelo usuário ou o aplicativo no Microsoft Entra ID e uma identidade no Amazon Cognito. Em seguida, configure sua carga de trabalho de software em execução no AWS para obter um token de acesso do provedor de identidade da Microsoft e acessar os recursos protegidos do Microsoft Entra. Consulte a federação de identidade de carga de trabalho com a AWS.
- Outras cargas de trabalho em execução em plataformas de computação fora do Azure. Configure uma relação de confiança entre a identidade gerenciada atribuída pelo usuário ou aplicativo no Microsoft Entra ID e o IdP externo para sua plataforma de computação. Você pode usar tokens emitidos por essa plataforma para se autenticar com a plataforma de identidade da Microsoft e chamar APIs no ecossistema da Microsoft. Use o fluxo de credenciais do cliente para obter um token de acesso da plataforma de identidade da Microsoft, passando o JWT do provedor de identidade em vez de criar um por conta própria usando um certificado armazenado.
- SPIFFE e SPIRE são um conjunto de padrões independentes de plataforma de código aberto para fornecer identidades para suas cargas de trabalho de software implantadas entre plataformas e fornecedores de nuvem. Primeiro, configure uma relação de confiança entre a identidade gerenciada atribuída pelo usuário ou aplicativo no Microsoft Entra ID e uma ID SPIFFE para uma carga de trabalho externa. Em seguida, configure sua carga de trabalho de software externa para obter um token de acesso do provedor de identidade da Microsoft e acessar os recursos protegidos do Microsoft Entra. Consulte a federação de identidade de carga de trabalho com SPIFFE e SPIRE.
- Criar uma conexão de serviço no Azure Pipelines. Crie uma conexão de serviço do Azure Resource Manager usando a federação de identidade de carga de trabalho.
Observação
Os tokens emitidos pelo Microsoft Entra ID não podem ser usados para fluxos de identidade federados. O fluxo de credenciais de identidade federada não dá suporte a tokens emitidos pelo Microsoft Entra ID.
Como ele funciona
Crie uma relação de confiança entre o IdP externo e uma identidade gerenciada atribuída pelo usuário ou aplicativo no Microsoft Entra ID. A credencial de identidade federada é usada para indicar qual token do IdP externo deve ser confiável para seu aplicativo ou identidade gerenciada. Configure uma identidade federada das seguintes formas:
- Em uma identidade gerenciada atribuída pelo usuário por meio do Centro de administração do Microsoft Entra, da CLI do Azure, do Azure PowerShell, do SDK do Azure e dos modelos do ARM (Azure Resource Manager). A carga de trabalho externa usa o token de acesso para acessar os recursos protegidos do Microsoft Entra sem precisar gerenciar segredos (em cenários com suporte). As etapas para configurar a relação de confiança diferem, dependendo do cenário e do IdP externo.
- Em um registro de aplicativo no Centro de administração do Microsoft Entra ou por meio do Microsoft Graph. Essa configuração permite que você obtenha um token de acesso para seu aplicativo sem a necessidade de gerenciar segredos fora do Azure. Para obter mais informações, saiba como configurar um aplicativo para confiar em um provedor de identidade externo e como configurar a confiança entre um aplicativo e uma identidade gerenciada atribuída pelo usuário.
Observação
Os valores issuer, subject e audience de Credencial de Identidade Federada, devem corresponder com distinção entre maiúsculas e minúsculas aos valores correspondentes issuer, subject e audience contidos no token que está sendo enviado ao Microsoft Entra ID pelo IdP externo para que o cenário seja autorizado. Para obter mais informações sobre essa alteração, visite As novidades da Autenticação.
O fluxo de trabalho para a troca de um token externo para um token de acesso é o mesmo, no entanto, para todos os cenários. O diagrama a seguir mostra o fluxo de trabalho geral de uma carga de trabalho que troca um token externo por um token de acesso e, em seguida, acessa os recursos protegidos do Microsoft Entra.
- A carga de trabalho externa (como um fluxo de trabalho de GitHub Actions) solicita um token do IdP externo (como o GitHub).
- O IdP externo emite um token para a carga de trabalho externa.
- A carga de trabalho externa (a ação de entrada em um fluxo de trabalho do GitHub, por exemplo) envia o token para a plataforma de identidade da Microsoft e solicita um token de acesso.
- A plataforma de identidade da Microsoft verifica a relação de confiança na identidade gerenciada atribuída pelo usuário ou no registro do aplicativo e valida o token externo na URL do emissor do OpenID Connect (OIDC) no IdP externo.
- Quando as verificações forem satisfeitas, a plataforma de identidade da Microsoft emitirá um token de acesso para a carga de trabalho externa.
- A carga de trabalho externa acessa recursos protegidos do Microsoft Entra usando o token de acesso da plataforma de identidade da Microsoft. Um fluxo de trabalho de GitHub Actions, por exemplo, usa o token de acesso para publicar um aplicativo Web no Serviço de Aplicativo do Azure.
A plataforma de identidade da Microsoft armazena apenas as 100 primeiras chaves de assinatura quando elas são baixadas do ponto de extremidade OIDC do IdP externo. Se o IdP externo expuser mais de 100 chaves de assinatura, você poderá ter erros ao usar a federação de identidade de carga de trabalho.
Consulte também
- Como criar, excluir, obter ou atualizar credenciais de identidade federadas em uma identidade gerenciada atribuída pelo usuário ou credenciais de identidade federadas em um registro de aplicativo.
- Configurar uma identidade gerenciada atribuída pelo usuário como uma credencial de identidade federada em um registro de uma aplicação.
- Leia a visão geral da identidade da carga de trabalho para saber como configurar uma carga de trabalho do Kubernetes para obter um token de acesso do provedor de identidade da Microsoft e acessar os recursos protegidos do Microsoft Entra.
- Leia a documentação do GitHub Actions para saber mais sobre como configurar seu fluxo de trabalho do GitHub Actions para obter um token de acesso do provedor de identidade da Microsoft e acessar os recursos protegidos do Microsoft Entra.
- Como o Microsoft Entra ID usa a concessão de credenciais do cliente OAuth 2.0 e uma declaração de cliente emitida por outro IdP para obter um token.
- Para obter informações sobre o formato exigido dos JWTs criados por provedores de identidade externos, leia sobre o formato de asserção .