Autenticación de Microsoft Entra para Azure Database for MySQL: servidor flexible

La autenticación de Microsoft Entra es un mecanismo para conectarse a Azure Database for MySQL Flexible Server mediante el uso de identidades definidas en Microsoft Entra ID. Mediante la autenticación Microsoft Entra, puede administrar identidades de usuario de base de datos y otros servicios Microsoft en una ubicación central, lo que simplifica la administración de permisos.

Ventajas de la autenticación Entra

  • Autentica a los usuarios en Azure servicios de forma coherente.
  • Administra las directivas de contraseña y la rotación de contraseñas en un solo lugar.
  • Admite varias formas de autenticación a través de Microsoft Entra ID, lo que puede eliminar la necesidad de almacenar contraseñas.
  • Permite a los clientes administrar permisos de base de datos mediante grupos de Microsoft Entra ID externos.
  • Usa usuarios de base de datos MySQL para autenticar identidades en el nivel de base de datos.
  • Admite la autenticación basada en tokens para las aplicaciones que se conectan a Azure Database for MySQL servidor flexible.

Configuración y uso de la autenticación de Microsoft Entra

  1. Seleccione el método de autenticación preferido para acceder al servidor flexible.

    • De forma predeterminada, el método de autenticación solo se establece en Autenticación mySQL.
    • Para habilitar Microsoft Entra autenticación, cambie el método de autenticación a:
      • Microsoft Entra authentication only
      • o bien MySQL and Microsoft Entra authentication
  2. Seleccione la identidad administrada asignada por el usuario (UAMI) con los siguientes privilegios:

    • User.Read.All: permite el acceso a Microsoft Entra información de usuario.
    • GroupMember.Read.All: permite el acceso a la información de grupo de Microsoft Entra.
    • Application.Read.ALL: permite acceder a la información (de aplicaciones) de las entidades de servicio de Microsoft Entra.
  3. Agregue Microsoft Entra Admin. Puede ser Microsoft Entra usuarios o grupos, que tienen acceso a un servidor flexible.

  4. Crear usuarios en su base de datos asociados con identidades de Microsoft Entra.

  5. Conéctese a su base de datos obteniendo un token para una identidad de Microsoft Entra e iniciando sesión.

Note

Para obtener instrucciones detalladas y paso a paso sobre cómo configurar la autenticación de Microsoft Entra con Azure Database for MySQL servidor flexible, consulte Configuración de la autenticación Microsoft Entra para Azure Database for MySQL: servidor flexible.

Architecture

Microsoft Entra autenticación requiere identidades administradas por el usuario. Al vincular una identidad asignada por el usuario al servidor flexible, el proveedor de recursos de identidad administrada (MSRP) emite internamente un certificado a esa identidad. Al eliminar la identidad administrada, se elimina automáticamente la entidad de servicio correspondiente.

El servicio usa la identidad administrada para solicitar tokens de acceso para los servicios que admiten la autenticación Microsoft Entra. Actualmente, Azure Database solo admite una identidad administrada asignada por el usuario (UMI) para Azure Database for MySQL Flexible Server. Para más información, consulte Tipos de identidad administrada en Azure.

El siguiente diagrama de alto nivel resume cómo funciona la autenticación mediante la autenticación de Microsoft Entra con Azure Database for MySQL - Servidor flexible. Las flechas indican las rutas de comunicación.

Diagrama de cómo funciona la autenticación de Microsoft Entra.

  1. La aplicación puede solicitar un token desde el punto de conexión de identidad de Azure Instance Metadata Service.
  2. Cuando se usa el identificador de cliente y el certificado, se realiza una llamada a Microsoft Entra para solicitar un token de acceso.
  3. Microsoft Entra devuelve un token de acceso JSON Web Token (JWT). La aplicación envía el token de acceso en llamadas al servidor.
  4. El servidor valida el token con Microsoft Entra.

Estructura de administrador

Cuando usa la autenticación de Microsoft Entra con Azure Database for MySQL - Flexible Server, tiene dos cuentas de administrador: el administrador original de MySQL y el administrador de Microsoft Entra.

Solo el administrador que utiliza una cuenta de Microsoft Entra puede crear el primer usuario de la base de datos con ID de Microsoft Entra en una base de datos de usuario. El inicio de sesión del 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 es un administrador del servidor de bases de datos. La cuenta de grupo mejora la capacidad de administración mediante la adición y eliminación centralizada de miembros del grupo en Microsoft Entra sin cambiar los usuarios ni los permisos en el servidor de bases de datos.

Importante

Solo puede configurar un administrador de Microsoft Entra (un usuario o grupo) a la vez.

Diagrama de la estructura de administración de Microsoft Entra.

Para acceder al servidor flexible, puede usar los métodos de autenticación siguientes:

  • Autenticación solo de MySQL: opción predeterminada que usa la autenticación nativa de MySQL con el inicio de sesión y la contraseña de MySQL.
  • Solo Microsoft Entra autenticación: deshabilita la autenticación nativa de MySQL y los usuarios y las aplicaciones deben autenticarse mediante Microsoft Entra. Para habilitar este modo, establezca el parámetro del servidor aad_auth_only en ON.
  • Autenticación con MySQL y Microsoft Entra ID: la autenticación nativa de MySQL y Microsoft Entra están disponibles. Para habilitar este modo, establezca el parámetro de servidor aad_auth_only en OFF.

Permissions

Para permitir que el UMI lea desde Microsoft Graph como identidad del servidor, conceda los permisos siguientes. Como alternativa, asigne el rol Lectores de directorio a la identidad administrada asignada por el usuario.

Importante

Solo un usuario con al menos el rol Administrador de roles con privilegios puede conceder estos permisos.

  • User.Read.All: permite el acceso a Microsoft Entra información de usuario.
  • GroupMember.Read.All: permite el acceso a la información de grupo 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.

Al conceder los permisos al UMI, se aplican a todos los servidores que cree con el UMI asignado como identidad de servidor.

Validación de tokens

La autenticación de Microsoft Entra en el servidor flexible de Azure Database for MySQL garantiza que el usuario existe en el servidor MySQL y comprueba la validez del token validando el contenido del token. El servicio realiza los siguientes pasos de validación de tokens:

  • El token está firmado por Microsoft Entra.
  • Microsoft Entra emite el token para el inquilino asociado al servidor.
  • El token no ha expirado.
  • El token es para la instancia de servidor flexible (y no para otro recurso de Azure).

Conexión mediante identidades de Microsoft Entra

La autenticación de Microsoft Entra admite los métodos siguientes para conectarse 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 de Active Directory o secretos de cliente
  • Identidad administrada

Al autenticarse en el Active Directory, se recupera un token. Este token es la contraseña para iniciar sesión.

Note

Solo los roles de usuario de Microsoft Entra admiten operaciones de administración, como añadir nuevos usuarios.

Note

Para obtener más información sobre cómo conectarse mediante un token de Active Directory, consulte Configuración de la autenticación de Microsoft Entra para Azure Database for MySQL: servidor flexible.

Otras consideraciones

  • Solo puede configurar un administrador de Microsoft Entra por servidor flexible a la vez.

  • Si elimina un usuario de Microsoft Entra, ese usuario no se puede autenticar con Entra. Por lo tanto, el usuario no puede adquirir un token de acceso. Aunque el usuario coincidente todavía está en la base de datos, no es posible conectarse al servidor con ese usuario.

    Note

    Puede iniciar sesión con el usuario eliminado Microsoft Entra hasta que expire el token (hasta 60 minutos desde la emisión del token). Si quita el usuario del servidor flexible de Azure Database for MySQL, este acceso se revoca inmediatamente.

  • Si quita el administrador de Microsoft Entra del servidor, el servidor ya no está asociado a un inquilino de Microsoft Entra y, por tanto, todos los inicios de sesión de Microsoft Entra están deshabilitados para el servidor. Al agregar un nuevo administrador de Microsoft Entra desde el mismo inquilino, se vuelven a habilitar los inicios de sesión de Microsoft Entra.

  • Un servidor flexible asocia los tokens de acceso al identificador único de Entra del usuario en vez de al nombre de usuario. Por lo tanto, si elimina un usuario de Microsoft Entra y, a continuación, agrega un nuevo usuario con el mismo nombre, el nuevo usuario no hereda los permisos anteriores.

  • Para habilitar la autenticación de Entra en un servidor réplica, debe aplicar los mismos pasos de configuración que se usan en el servidor principal en todos los servidores réplica.

Note

No puede transferir las suscripciones de un servidor flexible con Microsoft Entra autenticación habilitada a otro inquilino o directorio.

Paso siguiente