Autenticación de Microsoft Entra para Azure Database for MySQL: servidor flexible
SE APLICA A: Azure Database for MySQL: servidor flexible
La autenticación de Microsoft Entra es un mecanismo de conexión con Azure Database for MySQL: servidor flexible mediante identidades definidas en Microsoft Entra ID. Con la autenticación de Microsoft Entra, puede administrar las identidades de los usuarios de la base de datos y otros servicios de Microsoft en una ubicación central, lo que simplifica la administración de los permisos.
Ventajas
- Autenticación de usuarios en los servicios de Azure de manera uniforme.
- Administración de directivas de contraseñas y rotación de contraseñas en un solo lugar.
- Varias formas de autenticación compatibles con Microsoft Entra ID, lo que puede eliminar la necesidad de almacenar contraseñas.
- Los clientes pueden administrar los permisos de la base de datos con grupos externos (Microsoft Entra ID).
- La autenticación de Microsoft Entra utiliza usuarios de base de datos MySQL para autenticar identidades a nivel de base de datos.
- Compatibilidad de la autenticación basada en tokens con las aplicaciones que se conectan a Azure Database for MySQL: servidor flexible
Siga estos pasos para configurar y usar la autenticación de Microsoft Entra
Seleccione el método de autenticación preferido para acceder al servidor flexible. De forma predeterminada, el tipo de autenticación seleccionada está establecida en solo la de MySQL. Seleccione Autenticación solo de Microsoft Entra o Autenticación de Microsoft Entra y MySQL para habilitar la autenticación de Microsoft Entra.
Seleccione la identidad administrada por el usuario (UMI) con los siguientes privilegios para configurar la autenticación de Microsoft Entra:
- User.Read.All: permite acceder a la información de usuarios de Microsoft Entra.
- GroupMember.Read.All: permite acceder a la información de grupos de Microsoft Entra.
- Application.Read.ALL: permite acceder a la información (de aplicaciones) de las entidades de servicio de Microsoft Entra.
Agregue el administrador de Microsoft Entra. Puede tratarse de usuarios o grupos de Microsoft Entra que tienen acceso a un servidor flexible.
Cree usuarios de bases de datos en la base de datos, asignados a identidades de Microsoft Entra.
Conéctese a la base de datos recuperando un token para una identidad de Microsoft Entra e iniciando sesión.
Nota:
Para conocer los pasos detallados de cómo configurar la autenticación de Microsoft Entra con Azure Database for MySQL: servidor flexible, consulte Configuración de la autenticación de Microsoft Entra para Azure Database for MySQL: Servidor flexible
Arquitectura
Las identidades administradas por el usuario son necesarias para la autenticación de Microsoft Entra. Cuando una identidad asignada por el usuario está vinculada al servidor flexible, el proveedor de recursos de identidades administradas (MSRP) genera un certificado internamente para esa identidad. Cuando se elimina la identidad administrada, se quita automáticamente la entidad de servicio correspondiente.
A continuación, el servicio utiliza la identidad administrada para solicitar tokens de acceso de los servicios que admiten la autenticación de Microsoft Entra. Actualmente, Azure Database solo admite una identidad administrada asignada por el usuario (UMI) para Azure Database for MySQL: servidor flexible. Para más información, vea Tipos de identidad administrada en Azure.
En el siguiente diagrama general se resume cómo funciona la autenticación de Microsoft Entra con Azure Database for MySQL: servidor flexible. Las flechas indican las rutas de comunicación.
- La aplicación puede solicitar un token desde el punto de conexión de identidad de Azure Instance Metadata Service.
- Cuando se usa el identificador de cliente y el certificado, se realiza una llamada a Microsoft Entra ID para solicitar un token de acceso.
- Microsoft Entra ID devuelve un token de acceso de JSON Web Token (JWT). La aplicación envía el token de acceso en una llamada al servidor flexible.
- El servidor flexible valida el token con Microsoft Entra ID.
Estructura del administrador
Existen dos cuentas de administrador para Azure Database for MySQL: servidor flexible cuando se usa la autenticación de Microsoft Entra: el administrador original de MySQL y el administrador de Microsoft Entra.
Solo el administrador basado en una cuenta de Microsoft Entra puede crear el primer usuario de base de datos independiente en Microsoft Entra ID en una base de datos de usuario. El inicio de sesión de administrador de Microsoft Entra puede ser un usuario de Microsoft Entra o un grupo de Microsoft Entra. Cuando el administrador es una cuenta de grupo, cualquier miembro del grupo la puede usar, lo que permite varios administradores de Microsoft Entra para el servidor flexible. Mediante el uso de una cuenta de grupo como administrador, se mejora la administración al permitir agregar y quitar miembros de grupo de forma centralizada en Microsoft Entra ID sin cambiar los usuarios ni los permisos del servidor flexible. Solo se puede configurar un administrador de Microsoft Entra (un usuario o grupo) a la vez.
Algunos de los métodos de autenticación para acceder al servidor flexible son:
Solo autenticación de MySQL: esta es la opción predeterminada. Solo se puede usar la autenticación nativa de MySQL con un inicio de sesión y una contraseña de MySQL para acceder al servidor flexible.
Solo se deshabilita la autenticación de Microsoft Entra o la autenticación nativa de MySQL, y los usuarios pueden autenticarse solo con su usuario y token de Microsoft Entra. Para activar este modo, el parámetro de servidor aad_auth_only se establece en Activado.
Autenticación con MySQL y Microsoft Entra ID: se admiten la autenticación nativa de MySQL y la autenticación de Microsoft Entra. Para activar este modo, el parámetro de servidor aad_auth_only se establece en Desactivado.
Permisos
Se requieren los permisos siguientes para permitir que la UMI lea de Microsoft Graph como identidad del servidor. Como alternativa, asigne a la identidad administrada asignada por el usuario el rol Lectores de directorio..
Importante
Solo un usuario con al menos el rol Administrador de roles con privilegios puede conceder estos permisos.
- User.Read.All: permite acceder a la información de usuarios de Microsoft Entra.
- GroupMember.Read.All: permite acceder a la información de grupos de Microsoft Entra.
- Application.Read.ALL: permite acceder a la información (de aplicaciones) de las entidades de servicio de Microsoft Entra.
Para obtener instrucciones sobre cómo conceder y usar los permisos, consulte Introducción a los permisos de Microsoft Graph
Una vez que se conceden los permisos a la UMI, se habilitan para todos los servidores o todas las instancias creadas con la UMI asignada como una identidad de servidor.
Validación de token
La autenticación de Microsoft Entra en Azure Database for MySQL: servidor flexible comprueba que el usuario exista en el servidor MySQL y comprueba la validez del token mediante la validación del contenido del token. Se realizan los siguientes pasos de validación de token:
- El token está firmado por Microsoft Entra ID y no ha sido manipulado.
- El token fue emitido por Microsoft Entra ID para el inquilino asociado al servidor.
- El token no ha expirado.
- El token es para el recurso del servidor flexible (no para otro recurso de Azure).
Conexión mediante identidades de Microsoft Entra
La autenticación de Microsoft Entra admite los siguientes métodos de conexión a una base de datos mediante identidades de Microsoft Entra:
- Contraseña de Microsoft Entra
- Microsoft Entra integrado
- Microsoft Entra universal con MFA
- Uso de certificados de aplicación o secretos de cliente de Active Directory
- Identidad administrada
Una vez que se haya autenticado en Active Directory, recuperará un token. Este token es la contraseña para iniciar sesión.
Nota:
Esa operación de administración, como agregar nuevos usuarios, solo se admite para los roles de usuario de Microsoft Entra.
Nota:
Para más información sobre cómo conectarse con un token de Active Directory, consulte Configuración de la autenticación con Microsoft Entra ID para el servidor flexible de Azure Database for MySQL.
Otras consideraciones
Solo puede configurar un administrador de Microsoft Entra por servidor flexible en un momento dado.
Solo un administrador de Microsoft Entra para MySQL puede conectarse inicialmente al servidor flexible mediante una cuenta de Microsoft Entra. El administrador de Active Directory puede configurar usuarios posteriores de la base de datos de Microsoft Entra o un grupo de Microsoft Entra. Cuando el administrador es una cuenta de grupo, cualquier miembro del grupo la puede usar, lo que permite varios administradores de Microsoft Entra para el servidor flexible. Mediante el uso de una cuenta de grupo como administrador, se mejora la administración al permitir agregar y quitar miembros de grupo de forma centralizada en Microsoft Entra ID sin cambiar los usuarios ni los permisos del servidor flexible.
Si se elimina un usuario de Microsoft Entra ID, dicho usuario ya no podrá autenticarse con Microsoft Entra ID. Por lo tanto, la adquisición de un token de acceso para ese usuario ya no es posible. Aunque el usuario coincidente todavía está en la base de datos, no es posible conectarse al servidor con ese usuario.
Nota:
Aún es posible iniciar sesión con el usuario de Microsoft Entra eliminado hasta que expire el token (60 minutos como máximo a partir de la emisión del token). Si quita el usuario de Azure Database for MySQL: servidor flexible, este acceso se revoca inmediatamente.
Si el administrador de Microsoft Entra se quita del servidor, el servidor ya no estará asociado a un inquilino de Microsoft Entra y, por tanto, se deshabilitarán todos los inicios de sesión de Microsoft Entra para el servidor. La adición de un nuevo administrador de Microsoft Entra desde el mismo inquilino volverá a habilitar los inicios de sesión de Microsoft Entra.
Un servidor flexible asocia los tokens de acceso a los usuarios de Azure Database for MySQL: servidor flexible mediante el identificador de usuario único de Microsoft Entra en lugar del nombre de usuario. Esto significa que si se elimina un usuario de Microsoft Entra en Microsoft Entra ID y se crea un nuevo usuario con el mismo nombre, el servidor flexible considera que se trata de otro usuario. Por lo tanto, si se elimina un usuario de Microsoft Entra ID y, luego, se agrega uno nuevo con el mismo nombre, este no podrá conectarse con el rol existente.
Nota:
Las suscripciones de un servidor flexible con la autenticación de Microsoft Entra habilitada no se pueden transferir a otro inquilino o directorio.
Pasos siguientes
- Para saber cómo configurar Microsoft Entra ID con Azure Database for MySQL: servidor flexible, consulte Configuración de la autenticación de Microsoft Entra para Azure Database for MySQL: Servidor flexible.