Federación de identidades de carga de trabajo en Kubernetes habilitado para Azure Arc (versión preliminar)
Las cargas de trabajo de software que se ejecutan en clústeres de Kubernetes necesitan una identidad para autenticar y acceder a los recursos o comunicarse con otros servicios. Para una carga de trabajo de software que se ejecuta fuera de Azure, debe usar credenciales de aplicación, como un secreto o un certificado, para acceder a los recursos protegidos por Microsoft Entra (como Azure Key Vault o Azure Blob Storage). Estas credenciales suponen un riesgo para la seguridad y se deben almacenar de forma segura y cambiar periódicamente. También corre el riesgo de tiempo de inactividad del servicio si las credenciales expiran.
La federación de identidades de carga de trabajo permite configurar una identidad administrada asignada por el usuario o un registro de aplicaciones en Microsoft Entra ID para confiar en los tokens de un proveedor de identidades externo (IdP), como Kubernetes. El registro de aplicaciones o las identidades administradas asignadas por el usuario en Microsoft Entra ID se convierten en una identidad para cargas de trabajo de software que se ejecutan, en clústeres de Kubernetes habilitados para Arc. Una vez creada esa relación de confianza, la carga de trabajo puede intercambiar tokens de confianza de los clústeres de Kubernetes habilitados para Arc para tokens de acceso desde la plataforma de identidad de Microsoft. La carga de trabajo de software usa ese token de acceso para acceder a los recursos protegidos por Microsoft Entra. Con la federación de identidades de carga de trabajo, puede eliminar así la carga de mantenimiento que supone administrar manualmente las credenciales y eliminar el riesgo de pérdida de secretos o de que expiren los certificados.
Importante
La característica de federación de identidades de carga de trabajo de Azure Arc está actualmente en versión preliminar. Consulte Términos de uso complementarios para las versiones preliminares de Microsoft Azure para conocer los términos legales que se aplican a las características de Azure que se encuentran en la versión beta, en versión preliminar o que todavía no se han publicado para que estén disponibles con carácter general.
Funcionamiento de la identidad de carga de trabajo con clústeres de Kubernetes habilitados para Azure Arc
La compatibilidad con identidades de carga de trabajo para Kubernetes habilitado para Azure Arc usa la proyección de volúmenes de token de cuenta de servicio (es decir, una cuenta de servicio) para que los pods de carga de trabajo puedan usar una identidad de Kubernetes. Se emite un token de Kubernetes y la federación de OpenID Connect (OIDC) permite que las aplicaciones de Kubernetes accedan a los recursos de Azure de forma segura con Microsoft Entra ID, en función de las cuentas de servicio anotadas.
El clúster de Kubernetes habilitado para Arc actúa como emisor de tokens. Microsoft Entra ID usa OIDC para detectar claves de firma pública y comprobar la autenticidad del token de cuenta de servicio antes de intercambiarlo por un token de Microsoft Entra. La carga de trabajo puede intercambiar un token de cuenta de servicio proyectado en su volumen para un token de Microsoft Entra mediante la biblioteca cliente de Identidad de Azure o la Biblioteca de autenticación de Microsoft (MSAL).
En la tabla siguiente se muestran los puntos de conexión de emisor de OIDC necesarios para el id. de carga de trabajo de Microsoft Entra.
Punto de conexión | Descripción |
---|---|
{IssuerURL}/.well-known/openid-configuration |
También conocido como el documento de detección de OIDC, Contiene los metadatos sobre las configuraciones del emisor. |
{IssuerURL}/openid/v1/jwks |
Contiene las claves de firma públicas que utiliza Microsoft Entra ID para comprobar la autenticidad del token de la cuenta de servicio. |
Anotaciones y etiquetas de la cuenta de servicio
El id. de carga de trabajo de Microsoft Entra admite las siguientes asignaciones relacionadas con una cuenta de servicio:
- Uno a uno: una cuenta de servicio hace referencia a un objeto Microsoft Entra.
- Varios a uno: varias cuentas de servicio hacen referencia al mismo objeto de Microsoft Entra.
- Uno a varios: una cuenta de servicio hace referencia a varios objetos de Microsoft Entra cambiando la anotación de identificador de cliente. Para más información, consulte Cómo federar varias identidades con una cuenta de servicio de Kubernetes.
Requisitos
Los clústeres de Kubernetes habilitados para Azure Arc admiten el id. de carga de trabajo de Microsoft Entra a partir de la versión 1.21 del agente.
Para usar la característica de identidad de carga de trabajo, debe tener la versión 2.64 o posterior de la CLI de Azure y az connectedk8s
versión 1.10.0 o posterior. Asegúrese de actualizar la versión de la CLI de Azure antes de actualizar la versión de az connectedk8s
. Si usa Azure Cloud Shell, la versión más reciente de la CLI de Azure ya está instalada.
El id. de carga de trabajo de Microsoft Entra funciona especialmente bien con las Bibliotecas cliente de identidad de Azure o la colección de Biblioteca de autenticación de Microsoft (MSAL), junto con el registro de aplicaciones. Una carga de trabajo puede usar cualquiera de estas bibliotecas para autenticar los recursos en la nube de Azure y acceder a ellos sin problemas.
Para obtener más información sobre la integración con bibliotecas populares, consulte Usar el id. de carga de trabajo de Microsoft Entra con AKS.
Limitaciones actuales
Tenga presentes las siguientes limitaciones actuales:
- Se puede configurar un máximo de 20 credenciales de identidad federada por identidad administrada.
- Una vez agregada inicialmente la credencial de identidad federada, se tarda unos segundos en propagarse.
- La creación de credenciales de identidad federada no está admitida en identidades administradas asignadas por el usuario en determinadas regiones.