Bonjour,
Pour utiliser l'identité de votre application Web (Managed Identity) au lieu d'un utilisateur et mot de passe pour accéder à une base de données PostgreSQL Flexible Server sur Azure, voici les étapes générales à suivre :
- Activer l'identité gérée pour votre application Web
- Accédez à votre application Web sur le portail Azure.
- Sous l'onglet Identité, activez l'identité gérée système (ou attribuée par l'utilisateur si vous avez une configuration spécifique).
- Notez l'ID de l'identité si nécessaire pour une utilisation ultérieure.
- Configurer PostgreSQL Flexible Server
- Accédez à votre base de données PostgreSQL Flexible Server dans Azure.
- Allez dans Contrôle d'accès (IAM) et ajoutez un rôle à l'identité de l'application Web :
- Rôle : Lecteur de données PostgreSQL ou Contributeur de données PostgreSQL selon les permissions nécessaires.
- Assurez-vous que l'identité mappée est bien celle de votre application Web.
- Rôle : Lecteur de données PostgreSQL ou Contributeur de données PostgreSQL selon les permissions nécessaires.
- Activer l'authentification Azure AD pour PostgreSQL
- Dans votre base de données PostgreSQL Flexible Server :
- Activez l'authentification Azure Active Directory (AAD) si ce n'est pas déjà fait.
- Ajoutez un utilisateur PostgreSQL lié à l'identité de votre application via une commande SQL comme suit :
CREATE```sql
Adaptez cette commande selon les permissions souhaitées.
- Ajoutez un utilisateur PostgreSQL lié à l'identité de votre application via une commande SQL comme suit :
- Configurer la chaîne de connexion dans l'application Web
Dans votre code ou configuration d'application, utilisez une chaîne de connexion AAD, qui ne nécessite pas d'inclure un nom d'utilisateur ou un mot de passe. Vous pouvez par exemple utiliser une bibliothèque telle que pg
(Node.js), psycopg2
(Python), etc., avec des jetons AAD.
Un exemple Python avec psycopg2
:
import
- Assurez-vous que votre application peut se connecter sans erreurs.
- Testez l'accès à la base pour vérifier que les permissions sont correctement appliquées.
Bien à vous,