Authentification Microsoft Entra pour Azure Database pour 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 Microsoft Entra ID. Avec l’authentification Microsoft Entra, vous pouvez gérer les identités des utilisateurs de base de données et d’autres services Microsoft dans un emplacement centralisé, ce qui simplifie la gestion des autorisations.
Avantages
- Authentification uniforme des utilisateurs dans les services Azure
- Gestion des stratégies de mot de passe et de la rotation de mot de passe dans un emplacement unique
- 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 des 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
Effectuer les étapes ci-dessous pour configurer et utiliser l’authentification Microsoft Entra
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 Authentification MySQL uniquement. Sélectionnez l’authentification Microsoft Entra uniquement ou l’authentification MySQL et Microsoft Entra pour activer l’authentification Microsoft Entra.
Sélectionnez l’identité managée par l’utilisateur (UMI) avec les privilèges suivants pour configurer l’authentification Microsoft Entra :
- 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).
Ajoutez l’administrateur Microsoft Entra. Il peut s’agir d’utilisateurs ou de groupes Microsoft Entra qui ont accès à un serveur flexible.
Créez des utilisateurs de base de données dans votre base de données mappés sur les identités Microsoft Entra.
Connectez-vous à votre base de données en extrayant un jeton pour une identité Microsoft Entra et en ouvrant une session.
Remarque
Pour obtenir des instructions pas à pas sur la configuration de l’authentification Microsoft Entra avec le serveur flexible Azure Database pour MySQL, consultez Configurer l’authentification Microsoft Entra pour Azure Database pour MySQL – Serveur flexible
Architecture
Des identités managées par l’utilisateur sont requises pour l’authentification Microsoft Entra. Lorsqu’une identité attribuée par l’utilisateur est liée au serveur flexible, le fournisseur de ressources d’identité managée (Managed Identity Resource Provider, MSRP) émet un certificat en interne pour cette identité. Lorsqu’une identité managée est supprimée, le principal de service correspondant est automatiquement supprimé.
Le service utilise ensuite l’identité managée afin de 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 affecté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.
- Votre application peut demander un jeton au point de terminaison d’identité Azure Instance Metadata Service.
- Quand vous utilisez l’ID client et le certificat, un appel est passé à Microsoft Entra ID pour demander un jeton d’accès.
- Microsoft Entra ID retourne un jeton d’accès JWT (JSON Web Token). Votre application envoie le jeton d’accès lors d’un appel à votre serveur flexible.
- Le serveur flexible valide le jeton avec Microsoft Entra ID.
Structure de l’administrateur
Il existe deux comptes 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 la base de données autonome Microsoft Entra ID dans une base de données utilisateur. La connexion de l’administrateur Microsoft Entra peut être un utilisateur Microsoft Entra ou un groupe Microsoft Entra. Lorsque l’administrateur est un compte de groupe, il peut être utilisé par n’importe quel membre du groupe, ce qui permet d’avoir plusieurs administrateurs Microsoft Entra pour le serveur flexible. L’utilisation d’un compte de groupe en tant qu’administrateur facilite la gestion dans la mesure où vous pouvez ajouter et supprimer de manière centralisée des membres de groupe dans Microsoft Entra ID sans modifier les utilisateurs ou les autorisations dans le serveur flexible. Un seul administrateur Microsoft Entra (utilisateur ou groupe) peut être configuré à la fois.
Les méthodes d’authentification pour accéder au serveur flexible comprennent :
Authentification MySQL uniquement : il s’agit de l’option par défaut. Seule l’authentification MySQL native avec une connexion et un mot de passe MySQL peut être utilisée pour accéder au serveur flexible.
Authentification Microsoft Entra uniquement : l’authentification native MySQL est désactivée et les utilisateurs peuvent s’authentifier en utilisant uniquement leur nom d’utilisateur et leur jeton Microsoft Entra. Pour activer ce mode, le paramètre de serveur aad_auth_only est défini sur ACTIVÉ.
Authentification avec MySQL et Microsoft Entra ID : l’authentification MySQL native et l’authentification Microsoft Entra sont prises en charge. Pour activer ce mode, le paramètre de serveur aad_auth_only est défini sur DÉSACTIVÉ.
autorisations
Les autorisations suivantes sont nécessaires pour autoriser l’UMI à lire à partir de Microsoft Graph en tant qu’identité de serveur. Vous pouvez également attribuer à l’identité managée affectée par l’utilisateur le rôle Lecteurs de répertoire.
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’identité managée affectée par l’utilisateur (UMI), elles sont activées pour l’ensemble des serveurs créés avec l’identité UMI attribuée en tant qu’identité de serveur.
Validation du 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 exécutées :
- Le jeton est signé par Microsoft Entra ID et n’a pas été .
- Le jeton a été émis par Microsoft Entra ID pour le locataire associé au serveur.
- Le jeton n’a pas expiré.
- Le jeton est destiné à la ressource 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 d’identités Microsoft Entra :
- Mot de passe Microsoft Entra
- Microsoft Entra intégré
- Authentification universelle Microsoft Entra avec MFA
- Utilisation des certificats ou de clés secrètes client d’application Active Directory
- Identité managée
Une fois authentifié auprès d’Active Directory, vous récupérez un jeton. Ce jeton est votre mot de passe de connexion.
Remarque
Cette opération de gestion, telle que l’ajout de nouveaux utilisateurs, est uniquement prise en charge pour les rôles d’utilisateur Microsoft Entra.
Remarque
Pour plus d’informations sur la façon de se connecter avec 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 à la fois.
Seul un administrateur Microsoft Entra pour MySQL peut se connecter initialement au serveur flexible à l’aide d’un compte Microsoft Entra. L’administrateur Active Directory peut configurer les utilisateurs de base de données Microsoft Entra suivants ou un groupe Microsoft Entra. Lorsque l’administrateur est un compte de groupe, il peut être utilisé par n’importe quel membre du groupe, ce qui permet d’avoir plusieurs administrateurs Microsoft Entra pour le serveur flexible. L’utilisation d’un compte de groupe en tant qu’administrateur facilite la gestion dans la mesure où vous pouvez ajouter et supprimer de manière centralisée des membres de groupe dans Microsoft Entra ID sans modifier les utilisateurs ou les autorisations dans le serveur flexible.
Si un utilisateur est supprimé de Microsoft Entra ID, il ne peut plus s’authentifier auprès de Microsoft Entra ID. 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.
Remarque
Il est toujours possible de se connecter à l’aide de l’utilisateur Microsoft Entra supprimé jusqu’à l’expiration du jeton (60 minutes maximum après l’émission 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, ce dernier 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 réactive les connexions Microsoft Entra.
Un serveur flexible met en correspondance les jetons d’accès avec les utilisateurs du serveur flexible Azure Database pour MySQL en se servant de l’identifiant utilisateur Microsoft Entra unique de l’utilisateur au lieu du nom d’utilisateur. Ainsi, si un utilisateur Microsoft Entra est supprimé de Microsoft Entra ID et qu’un nouvel utilisateur est créé avec le même nom, le serveur flexible considère qu’il s’agit d’un utilisateur différent. Par conséquent, si un utilisateur est supprimé de Microsoft Entra ID et qu’un nouvel utilisateur portant le même nom est ajouté, le nouvel utilisateur ne peut pas se connecter à l’utilisateur existant.
Remarque
Les abonnements d’un serveur flexible avec l’authentification Microsoft Entra activée ne peuvent pas être transférés vers un autre locataire ou annuaire.