Configuración de la aceptación del registro de los ámbitos de autenticación de Microsoft Entra

La autenticación de Microsoft Entra con Azure Container Registry (ACR) sigue un proceso de dos saltos. En primer lugar, los usuarios se autentican con el identificador de Entra de Microsoft para obtener un token de autenticación con un ámbito de audiencia de autenticación específico (por ejemplo, az login). A continuación, los usuarios se autentican con el registro mediante ese token de autenticación de Microsoft Entra (por ejemplo, az acr login). De forma predeterminada, en el segundo paso durante la autenticación del Registro, los registros aceptan tanto la autenticación de Microsoft Entra con ámbito de ARM (acceso amplio de Azure Resource Manager) como la autenticación de Microsoft Entra con ámbito de ACR (acceso específico del Registro restringido). Para mejorar la seguridad, puede configurar el registro para que acepte solo la autenticación de Microsoft Entra limitada al ámbito de ACR.

Nota:

Es posible que algunos servicios e integraciones de Azure no funcionen cuando el registro esté configurado para aceptar solo la autenticación de Microsoft Entra con ámbito de ACR. Pruebe la compatibilidad en entornos que no son de producción antes de aplicar esta configuración en producción.

En este artículo se muestra cómo configurar un registro de contenedor para la autenticación de Microsoft Entra con ámbito de ACR mediante la CLI de Azure o Azure Portal.

Requisitos previos

Descripción de los ámbitos de autenticación de Microsoft Entra para ACR

En esta sección se explica el flujo de autenticación de dos saltos, la diferencia entre los ámbitos de autenticación y cómo controla la configuración del Registro el acceso.

Flujo de autenticación de dos saltos

La autenticación con ACR implica dos pasos distintos que se aplican a los usuarios de la CLI de Azure, los servicios de Azure y el código mediante programación mediante kits de desarrollo de software (SDK):

  1. Primer salto: autenticación con el identificador de Entra de Microsoft: ejecute az login para autenticarse con el identificador de Microsoft Entra y obtener un token de autenticación de Microsoft Entra. Este token contiene un ámbito de audiencia que determina a qué recursos de Azure puede acceder:

    • De forma predeterminada, az login obtiene un token de autenticación de Microsoft Entra con ámbito de ARM (acceso amplio a Azure Resource Manager).
    • Al usar az login --scope https://containerregistry.Azure.NET/.default, obtiene un token de autenticación de Microsoft Entra con ámbito de ACR (acceso específico de registro restringido).
  2. Segundo salto: autentíquese con el servicio ACR: ejecute az acr login para autenticarse con el servicio ACR mediante el token de autenticación de Microsoft Entra desde el primer salto. En este momento, la configuración del Registro determina si se debe aceptar o rechazar el intento de autenticación del Registro en función del ámbito del token de autenticación de Microsoft Entra.

Tipos de ámbito de autenticación de Microsoft Entra

Autenticación de Microsoft Entra con alcance ARM

  • Proporciona acceso amplio a Azure Resource Manager (ARM), el plano de control para administrar todos los recursos de Azure.
  • Este tipo de ámbito es el valor predeterminado cuando se ejecuta az login sin ningún otro parámetro.
  • Los tokens de autenticación de Microsoft Entra con ámbito de ARM son demasiado permisivos para las operaciones de registro de contenedores, ya que conceden acceso más allá de lo que se necesita para la autenticación del registro.

Autenticación de Microsoft Entra con alcance específico para ACR

  • Proporciona un acceso limitado y específico al registro, exclusivamente para las operaciones de ACR.
  • Requiere especificar --scope https://containerregistry.Azure.NET/.default explícitamente durante az login.
  • Sigue el principio de privilegios mínimos al conceder solo los permisos necesarios para las operaciones del registro de contenedor.

Opciones de configuración del Registro

La configuración del Registro, controlada por la azureADAuthenticationAsArmPolicy propiedad , determina lo que sucede durante el segundo salto de autenticación (az acr login):

  • Cuando está habilitado (valor predeterminado): El registro acepta la autenticación de Microsoft Entra con ámbito ARM y ámbito ACR.
  • Cuando está deshabilitado (recomendado): El Registro solo acepta la autenticación de Microsoft Entra con ámbito ACR y rechaza la autenticación con ámbito ARM.

Por qué ACR recomienda solo la autenticación específica para ACR

Configurar el registro para aceptar solo la autenticación de Microsoft Entra con ámbito ACR proporciona varias ventajas:

  • Seguridad mejorada: limita la autenticación para limitar el ámbito de los tokens de autenticación de Microsoft Entra, lo que reduce la superficie expuesta a ataques.
  • Acceso con privilegios mínimos: garantiza que los tokens de autenticación de Microsoft Entra usados para la autenticación del registro solo tienen los permisos necesarios para las operaciones del registro de contenedor.
  • Alineación de cumplimiento: ayuda a cumplir los requisitos de seguridad y cumplimiento que exigen patrones mínimos de acceso a privilegios.
  • Procedimiento recomendado: se alinea con los procedimientos recomendados de seguridad de Azure para la administración de identidades y acceso.

Configuración del registro para la autenticación de Microsoft Entra con ámbito de ACR - CLI de Azure

Puede configurar el registro para controlar qué ámbitos de autenticación de Microsoft Entra se aceptan durante el segundo salto de autenticación. La azureADAuthenticationAsArmPolicy propiedad controla esta configuración.

Requiere la versión 2.40.0 o posterior de la CLI de Azure. Para buscar su versión, ejecute az --version.

Comprobación de la configuración actual del Registro

Ejecute el siguiente comando para ver la configuración actual del Registro:

az acr config authentication-as-arm show -r <registry>

El valor de estado muestra la configuración actual:

  • habilitado (valor predeterminado): el registro acepta la autenticación de Microsoft Entra con ámbito de ARM y ACR.
  • deshabilitado (recomendado): el registro solo acepta la autenticación de Microsoft Entra con ámbito de ACR.

Actualización de la configuración del Registro

Para configurar el registro para que acepte solo la autenticación de Microsoft Entra con ámbito de ACR, establezca el estado en disabled:

az acr config authentication-as-arm update -r <registry> --status disabled

Para volver a la configuración predeterminada que acepta tanto la autenticación de Microsoft Entra con ámbito ARM como con ámbito ACR:

az acr config authentication-as-arm update -r <registry> --status enabled

Autenticación con la autenticación de Microsoft Entra con ámbito de ACR

En esta sección se muestra cómo realizar el flujo de autenticación de dos saltos usando la autenticación de Microsoft Entra con ámbito de ACR. Este método de autenticación funciona con ambas configuraciones del registro, pero es necesario cuando el registro está configurado para aceptar solo la autenticación de Microsoft Entra con ámbito de ACR.

Primer salto: obtener un token de autenticación de Microsoft Entra con ámbito de ACR

Para obtener un token de autenticación de Microsoft Entra con ámbito de ACR, especifique el parámetro --scope al ejecutar az login:

az login --scope https://containerregistry.azure.net/.default

Este comando le autentica mediante Microsoft Entra ID y obtiene un token de autenticación de Microsoft Entra con un ámbito específico para ACR. El token de autenticación se almacena en la memoria caché local.

Nota:

Para obtener un token de autenticación de Microsoft Entra con ámbito para el servicio de ACR, debe especificar https://containerregistry.Azure.NET/.default. No puede especificar https://registryname.azurecr.io/ como ámbito, ya que Microsoft Entra ID y ACR no admiten las audiencias de autenticación de Microsoft Entra para registros específicos.

Segundo salto: Autenticación con el registro

Después de obtener el token de autenticación de Microsoft Entra con ámbito de ACR en el primer salto, autentíquese con su registro:

az acr login -n <registry>

Durante este segundo salto, el registro valida el token de autenticación de Microsoft Entra. Si configura el registro para que acepte solo la autenticación con ámbito de ACR, rechaza los tokens con ámbito de ARM y solo acepta el token de autenticación de Microsoft Entra con ámbito de ACR que obtuvo en el primer salto.

Puede usar el token de autenticación de Microsoft Entra con ámbito de ACR para autenticarse con todos los registros de ACR a los que tiene permisos de acceso.

Configuración del registro para la autenticación de Microsoft Entra con ámbito de ACR - Azure Portal

Puede usar Azure Policy para configurar los registros para que solo acepten la autenticación de Microsoft Entra con ámbito de ACR. La asignación de una política integrada configura automáticamente la propiedad del registro para los registros actuales y futuros dentro del ámbito de la política. Puede aplicar la directiva en el nivel de grupo de recursos o en el nivel de suscripción.

Azure Container Registry proporciona dos definiciones de directiva integradas para configurar la autenticación de Microsoft Entra con ámbito de ACR:

  • Container registries should have ARM audience token authentication disabled. - Esta directiva informa y bloquea los recursos no conformes y puede actualizar automáticamente los registros no conformes a la configuración recomendada.
  • Configure container registries to disable ARM audience token authentication. - Esta directiva ofrece funcionalidades de corrección y actualiza registros no conformes para aceptar solo la autenticación con ámbito de ACR.

Para más definiciones de directivas, consulte Definiciones de directivas integradas de Azure Container Registry.

Asignación de una definición de directiva integrada

Para configurar tus registros para que solo acepten la autenticación de Microsoft Entra especializada en el ámbito de ACR utilizando Azure Policy:

  1. Inicie sesión en Azure Portal.

  2. Vaya al grupo de recursos que contiene Azure Container Registry.

  3. En el menú servicio, en Configuración, seleccione Directivas.

  4. En la página Directiva, en Creación, seleccione Asignaciones y seleccione Asignar directiva.

  5. En la pestaña Asignar directiva, use filtros para buscar el ámbito, la definición de directiva y el nombre de la asignación.

    Captura de pantalla de la pestaña Asignar directiva.

  6. Seleccione Ámbito para filtrar y buscar la suscripción y el grupo de recursos y elija Seleccionar.

  7. Seleccione Definición de directiva para filtrar y buscar las definiciones de directiva integradas que configuran la autenticación con ámbito de ACR.

    Captura de pantalla de definiciones de directiva integradas.

  8. Use filtros para seleccionar y confirmar el ámbito, la definición de directiva y el nombre de tarea.

  9. Use los filtros para limitar los estados de cumplimiento o para buscar las directivas.

  10. Confirme los valores y establezca la aplicación de directivas como habilitada. Esta configuración garantiza que la directiva configure los registros dentro del ámbito para aceptar solo la autenticación de Microsoft Entra con ámbito de ACR.

  11. Seleccione Revisar + crear.

Pasos siguientes