Partager via


Authentification via Microsoft Entra pour Azure Database for MySQL - Serveur Flexible

L’authentification Microsoft Entra est un mécanisme de connexion au serveur flexible Azure Database pour MySQL à l’aide d’identités définies dans l’ID Microsoft Entra. Avec l’authentification Microsoft Entra, vous pouvez gérer les identités utilisateur de base de données et d’autres services Microsoft dans un emplacement central, ce qui simplifie la gestion des autorisations.

Avantages de l’authentification Entra

  • Authentification uniforme des utilisateurs dans les services Azure
  • Gestion des stratégies de mot de passe et de la rotation des mots de passe dans un même emplacement
  • Formes d’authentification multiples prises en charge par Microsoft Entra ID, ce qui peut éviter d’avoir à stocker les mots de passe
  • Les clients peuvent gérer les autorisations de base de données à l’aide de groupes externes (Microsoft Entra ID).
  • L’authentification Microsoft Entra utilise les utilisateurs de base de données MySQL pour authentifier les identités au niveau de la base de données
  • Prise en charge de l’authentification basée sur des jetons pour les applications se connectant au serveur flexible Azure Database pour MySQL

Configurer et utiliser l’authentification Microsoft Entra

  1. Sélectionnez votre méthode d’authentification préférée pour accéder au serveur flexible.

    • Par défaut, l’authentification sélectionnée est définie sur l’authentification MySQL uniquement.
    • Pour activer l’authentification Microsoft Entra, vous devez modifier la méthode d’authentification :
      • Microsoft Entra authentication only
      • ou MySQL and Microsoft Entra authentication
  2. Sélectionnez l’identité managée affectée par l’utilisateur (UAMI) avec les privilèges suivants :

    • User.Read.All : permet d’accéder aux informations utilisateur Microsoft Entra.
    • GroupMember.Read.All : permet d’accéder aux informations de groupe Microsoft Entra.
    • Application.Read.ALL : permet d’accéder aux informations sur le principal de service Microsoft Entra (application).
  3. Ajoutez Microsoft Entra Admin. Il peut s’agir d’utilisateurs ou de groupes Microsoft Entra, qui ont accès à un serveur flexible.

  4. Créez des utilisateurs de base de données dans votre base de données mappée aux identités Microsoft Entra.

  5. Connectez-vous à votre base de données en récupérant un jeton pour une identité Microsoft Entra et en vous connectant.

Note

Pour obtenir des instructions détaillées sur la configuration de l’authentification Microsoft Entra avec un serveur flexible Azure Database pour MySQL, consultez Configurer l’authentification Microsoft Entra pour Azure Database pour MySQL - Serveur flexible

Architecture

Les identités managées par l’utilisateur sont requises pour l’authentification Microsoft Entra. Lorsqu'une identité assignée par l'utilisateur est liée au serveur flexible, le fournisseur de ressources d'identité gérée (MSRP) émet un certificat en interne à cette identité. Lorsque l’identité managée est supprimée, le principal de service correspondant est automatiquement supprimé.

Le service utilise ensuite l’identité managée pour demander des jetons d’accès pour les services qui prennent en charge l’authentification Microsoft Entra. Azure Database prend actuellement en charge uniquement une identité managée attribuée par l'utilisateur (UMI) pour le serveur flexible Azure Database pour MySQL. Pour plus d’informations, consultez Types d’identités managées dans Azure.

Le diagramme général suivant résume le fonctionnement de l’authentification à l’aide de l’authentification Microsoft Entra avec le serveur flexible Azure Database pour MySQL. Les flèches indiquent les voies de communication.

Diagramme du fonctionnement de l’authentification Microsoft Entra.

  1. Votre application peut demander un jeton au point de terminaison d’identité Azure Instance Metadata Service.
  2. Lorsque vous utilisez l’ID client et le certificat, un appel est effectué à Microsoft Entra pour demander un jeton d’accès.
  3. Microsoft Entra retourne un jeton d’accès JSON Web Token (JWT). Votre application envoie le jeton d’accès lors des appels à votre serveur.
  4. Le serveur valide le jeton avec Microsoft Entra.

Structure d’administrateur

Il existe deux comptes d’administrateur pour le serveur flexible Azure Database pour MySQL lors de l’utilisation de l’authentification Microsoft Entra : l’administrateur MySQL d’origine et l’administrateur Microsoft Entra.

Seul l’administrateur basé sur un compte Microsoft Entra peut créer le premier utilisateur de base de données autonome Microsoft Entra ID dans une base de données utilisateur. La connexion administrateur Microsoft Entra peut être un utilisateur Microsoft Entra ou un groupe Microsoft Entra. Lorsque l’administrateur est un compte de groupe, tout membre de groupe est administrateur de serveur de base de données. Le compte de groupe améliore la facilité de gestion en ajoutant et en supprimant de manière centralisée les membres du groupe dans Microsoft Entra sans modifier les utilisateurs ou les autorisations dans le serveur de base de données.

Important

Un seul administrateur Microsoft Entra (un utilisateur ou un groupe) peut être configuré à la fois.

Diagramme de la structure d’administration Microsoft Entra.

Les méthodes d’authentification pour accéder au serveur flexible sont les suivantes :

  • Authentification MySQL uniquement : l’option par défaut autorise l’authentification MySQL native uniquement à l’aide de la connexion et du mot de passe MySQL.
  • Seule l’authentification Microsoft Entra : l’authentification native MySQL est désactivée, et les utilisateurs et les applications doivent s’authentifier à l’aide de Microsoft Entra. Pour activer ce mode, le paramètre aad_auth_only de serveur est défini sur ON.
  • L’authentification avec MySQL et Microsoft Entra ID : l’authentification MySQL native et l’authentification Microsoft Entra sont disponibles. Pour activer ce mode, le paramètre aad_auth_only de serveur est défini sur OFF.

Permissions

Les autorisations suivantes sont requises pour permettre à l’UMI de lire à partir de Microsoft Graph comme identité de serveur. Vous pouvez également attribuer l’identité managée affectée par l’utilisateur au rôle Lecteurs d’annuaire .

Important

Seul un utilisateur disposant au moins du rôle Administrateur de rôle privilégié peut accorder ces autorisations.

  • User.Read.All : permet d’accéder aux informations utilisateur Microsoft Entra.
  • GroupMember.Read.All : permet d’accéder aux informations de groupe Microsoft Entra.
  • Application.Read.ALL : permet d’accéder aux informations sur le principal de service Microsoft Entra (application).

Pour obtenir des conseils sur l’octroi et l’utilisation des autorisations, consultez Vue d’ensemble des autorisations Microsoft Graph

Une fois les autorisations accordées à l’UMI, elles sont activées pour tous les serveurs créés avec l’UMI affecté en tant qu’identité de serveur.

Validation de jeton

L’authentification Microsoft Entra dans le serveur flexible Azure Database pour MySQL garantit que l’utilisateur existe dans le serveur MySQL et vérifie la validité du jeton en validant le contenu du jeton. Les étapes de validation de jeton suivantes sont effectuées :

  • Le jeton est signé par Microsoft Entra.
  • Le jeton est émis par Microsoft Entra pour le locataire associé au serveur.
  • Le jeton n’a pas expiré.
  • Le jeton est destiné à l’instance de serveur flexible (et non à une autre ressource Azure).

Se connecter à l’aide d’identités Microsoft Entra

L’authentification Microsoft Entra prend en charge les méthodes suivantes de connexion à une base de données à l’aide des identités Microsoft Entra :

  • Mot de passe Microsoft Entra
  • Microsoft Entra intégré
  • Microsoft Entra Universal avec authentification multifacteur (MFA)
  • Utilisation de certificats d’application Active Directory ou de secrets clients
  • Identité managée

Une fois que vous vous authentifiez auprès d’Active Directory, vous récupérez un jeton. Ce jeton est votre mot de passe de connexion.

Note

Cette opération de gestion, telle que l’ajout de nouveaux utilisateurs, n’est prise en charge que pour les rôles d’utilisateur Microsoft Entra.

Note

Pour plus d’informations sur la connexion à un jeton Active Directory, consultez Configurer l’authentification Microsoft Entra pour Azure Database pour MySQL - Serveur flexible.

Autres considérations

  • Vous ne pouvez configurer qu’un seul administrateur Microsoft Entra par serveur flexible à tout moment.

  • Si un utilisateur est supprimé de Microsoft Entra, cet utilisateur ne peut plus s’authentifier auprès d’Entra. Par conséquent, l’acquisition d’un jeton d’accès pour cet utilisateur n’est plus possible. Bien que l’utilisateur correspondant se trouve toujours dans la base de données, la connexion au serveur avec cet utilisateur n’est pas possible.

    Note

    Il est possible de se connecter avec l’utilisateur Microsoft Entra supprimé jusqu’à ce que le jeton expire, ce qui peut encore se faire jusqu'à 60 minutes après la délivrance du jeton. Si vous supprimez l’utilisateur du serveur flexible Azure Database pour MySQL, cet accès est révoqué immédiatement.

  • Si l’administrateur Microsoft Entra est supprimé du serveur, le serveur n’est plus associé à un locataire Microsoft Entra, et par conséquent, toutes les connexions Microsoft Entra sont désactivées pour le serveur. L’ajout d’un nouvel administrateur Microsoft Entra à partir du même locataire active à nouveau les connexions Microsoft Entra.

  • Un serveur flexible associe les jetons d’accès à l’ID Entra unique de l’utilisateur plutôt qu’à son nom d’utilisateur. Par conséquent, si un utilisateur est supprimé de Microsoft Entra, puis qu’un nouvel utilisateur portant le même nom est ajouté, le nouvel utilisateur n’hérite pas des autorisations précédentes.

  • Pour activer l’authentification Entra sur un serveur réplica, vous devez appliquer les mêmes étapes de configuration que celles utilisées sur le serveur principal sur tous les partenaires réplicas.

Note

Les abonnements d’un serveur flexible avec l’authentification Microsoft Entra activé ne peuvent pas être transférés vers un autre locataire ou répertoire.

Étape suivante