Federação de identidade de carga de trabalho no Kubernetes habilitado para Azure Arc (versão prévia)
Cargas de trabalho de software em execução em clusters do Kubernetes precisam de uma identidade para autenticar e acessar recursos ou se comunicar com outros serviços. Para uma carga de trabalho de software em execução fora do Azure, você precisa usar credenciais de aplicativo, como um segredo ou certificado, para acessar recursos protegidos pelo Microsoft Entra (como o Azure Key Vault ou o Armazenamento de Blobs do Azure). 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.
A federação de identidade de carga de trabalho deixa que você configure uma identidade gerenciada atribuída pelo usuário ou um registro de aplicativo no Microsoft Entra ID para confiar em tokens de um IdP (provedor de identidade) externo, como o Kubernetes. 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 em clusters Kubernetes habilitados pelo Arc. Quando essa relação de confiança é criada, sua carga de trabalho pode trocar tokens confiáveis dos clusters do Kubernetes habilitados pelo Arc com tokens de acesso da plataforma de identidade da Microsoft. Sua carga de trabalho de software usa esse token de acesso para acessar os recursos protegidos pelo Microsoft Entra. Com a federação de identidades da carga de trabalho, você pode eliminar a carga de manutenção do gerenciamento manual de credenciais e eliminar o risco de vazamento de segredos ou de expiração de certificados.
Importante
O recurso de federação de identidade de carga de trabalho do Azure Arc está atualmente em VERSÃO PRÉVIA. Veja os Termos de Uso Complementares para Versões Prévias do Microsoft Azure para obter termos legais que se aplicam aos recursos do Azure que estão em versão beta, versão prévia ou que, de outra forma, ainda não foram lançados em disponibilidade geral.
Como a identidade de carga de trabalho funciona com clusters do Kubernetes habilitados para Azure Arc
O suporte à identidade de carga de trabalho para o Kubernetes habilitado para Azure Arc usa Projeção de Volume de Token de Conta de Serviço (ou seja, uma conta de serviço) para que os pods de carga de trabalho possam usar uma identidade do Kubernetes. Um token kubernetes é emitido e a federação OpenID Connect (OIDC) permite que aplicativos Kubernetes acessem recursos do Azure com segurança com o Microsoft Entra ID, com base em contas de serviço anotadas.
O cluster do Kubernetes habilitado para Arc atua como o emissor do token. O Microsoft Entra ID usa o OIDC para descobrir as chaves de assinatura públicas e verificar a autenticidade do token da conta de serviço antes de trocá-lo por um token do Microsoft Entra. Sua carga de trabalho pode trocar um token de conta de serviço projetado para seu volume para um token do Microsoft Entra usando a biblioteca de clientes da Identidade do Azure ou a MSAL (Biblioteca de Autenticação da Microsoft).
A tabela a seguir mostra os pontos de extremidade do emissor OIDC necessários para a ID de carga de trabalho do Microsoft Entra.
Ponto de extremidade | Descrição |
---|---|
{IssuerURL}/.well-known/openid-configuration |
Também conhecido como documento de descoberta de OIDC. Contém os metadados sobre as configurações do emissor. |
{IssuerURL}/openid/v1/jwks |
Contém as chaves de assinatura pública que o Microsoft Entra ID usa para verificar a autenticidade do token da conta de serviço. |
Rótulos e anotações da conta de serviço
A ID de carga de trabalho do Microsoft Entra dá suporte aos seguintes mapeamentos relacionados a uma conta de serviço:
- Um para um: uma conta de serviço faz referência a um objeto do Microsoft Entra.
- Muitos para um: em que várias contas de serviço fazem referência ao mesmo objeto do Microsoft Entra.
- Um para muitos: em que uma conta de serviço faz referência a vários objetos do Microsoft Entra alterando a anotação da ID do cliente. Para obter mais informações, confira Como federar várias identidades com uma conta de serviço do Kubernetes.
Requisitos
Os clusters do Kubernetes habilitados para Azure Arc dão suporte à Identidade de Carga de trabalho do Microsoft Entra começando com o agente versão 1.21.
Para usar o recurso de identidade de carga de trabalho, você deve ter a CLI do Azure versão 2.64 ou superior e az connectedk8s
a versão 1.10.0 ou superior. Atualize sua versão da CLI do Azure antes de atualizar sua versão az connectedk8s
. Caso use o Azure Cloud Shell, a versão mais recente da CLI do Azure será instalada.
A ID de carga de trabalho do Microsoft Entra funciona especialmente bem com as Bibliotecas de clientes da Identidade do Azureou a coleção da Biblioteca de Autenticação da Microsoft (MSAL) junto com o registro de aplicativo. A carga de trabalho poderá usar qualquer uma dessas bibliotecas para autenticar e acessar facilmente os recursos de nuvem do Azure.
Para obter mais informações sobre a integração com bibliotecas populares, consulte Usar a ID de Carga de Trabalho do Microsoft Entra com o AKS.
Limitações atuais
Lembre-se das seguintes limitações atuais:
- Um máximo de 20 credenciais de identidade federadas por identidade gerenciada pode ser configurado.
- Depois que a credencial de identidade federal é inicialmente adicionada, leva alguns segundos para ser propagada.
- A criação de credenciais de identidade federada não tem suporte em identidades gerenciadas atribuídas pelo usuário em determinadas regiões.