Authentification IAM pour les bases de données AlloyDB pour PostgreSQL

Cette page explique comment utiliser Identity and Access Management (IAM) pour gérer l'accès à vos bases de données AlloyDB.

Concepts d'authentification IAM

Lorsque vous utilisez l'authentification IAM, l'autorisation d'accéder à une instance AlloyDB n'est pas accordée directement à l'utilisateur final. À la place, les autorisations sont regroupées dans des rôles, et les rôles sont attribués à des comptes principaux. Pour en savoir plus, consultez la présentation d'IAM.

Les administrateurs comptant des utilisateurs qui se connectent via l'authentification IAM pour les bases de données peuvent utiliser IAM pour gérer de manière centralisée le contrôle des accès à leurs instances à l'aide de stratégies IAM.

Les stratégies IAM impliquent les entités suivantes :

  • Comptes principaux. Dans AlloyDB, vous pouvez utiliser un compte utilisateur ou un compte de service (pour les applications). Pour en savoir plus, consultez Comptes principaux.

  • Rôles Pour l'authentification IAM pour les bases de données, un compte principal a besoin de l'autorisation alloydb.instances.login. Cette autorisation est incluse dans le rôle Client AlloyDB (roles/alloydb.client). Pour obtenir cette autorisation, vous devez lier l'utilisateur, le compte de service ou le groupe au rôle prédéfini ou à un rôle personnalisé qui inclut cette autorisation. Pour en savoir plus, consultez Autorisations et rôles.

  • Ressource Les ressources auxquelles les comptes principaux accèdent sont des instances AlloyDB. Par défaut, des liaisons de stratégie IAM sont appliquées au niveau du projet, de sorte que les comptes principaux reçoivent des autorisations de rôle pour toutes les instances AlloyDB du projet. Pour en savoir plus, consultez Ressources.

Comparer les options d'authentification pour les bases de données

Utilisez le tableau suivant pour déterminer la méthode d'authentification la mieux adaptée à votre cas d'utilisation.

Fonctionnalité Authentification intégrée à la base de données Authentification IAM pour base de données (individuelle)
Méthode d'authentification Mot de passe Jeton d'authentification temporaire
Chiffrement du trafic réseau SSL non requis SSL requis
Gestion des utilisateurs Manuelle Centralisé via IAM

Authentification IAM automatique ou manuelle pour les bases de données

AlloyDB propose deux méthodes d'authentification IAM pour les bases de données : automatique et manuelle.

Authentification IAM automatique pour les bases de données

L'authentification IAM automatique pour les bases de données vous permet de transférer des requêtes et de gérer les jetons d'accès à un connecteur AlloyDB intermédiaire, tel que le proxy d'authentification ou l'un des connecteurs de langage.

Avec l'authentification IAM automatique pour les bases de données, une application doit transmettre uniquement le nom d'utilisateur IAM de la base de données dans une requête de connexion du client. Le connecteur envoie les informations de jeton d'accès à la place de l'attribut mot de passe au nom du client.

Authentification IAM manuelle pour les bases de données

L'authentification IAM manuelle pour les bases de données nécessite que le compte principal IAM transmette explicitement le jeton d'accès comme attribut mot de passe dans la requête de connexion client. Les comptes principaux doivent d'abord se connecter à Google Cloud et demander explicitement à IAM le jeton d'accès.

Conditions IAM et journaux d'audit

Les conditions IAM vous permettent d'attribuer des rôles en fonction de divers attributs. Par exemple, vous pouvez autoriser l'accès à certaines dates et heures uniquement ou accorder l'accès uniquement aux ressources AlloyDB portant certains noms.

Pour conserver les enregistrements d'accès aux données, y compris les informations de connexion, vous pouvez utiliser Cloud Audit Logs. Cloud Audit Logs sont désactivés par défaut. Vous devez activer les journaux d'audit des accès aux données pour le suivi des connexions.

Restrictions et bonnes pratiques

  • Pour des raisons de sécurité, les connexions utilisant l'authentification IAM pour les bases de données ne sont disponibles que sur une connexion SSL. Les connexions non chiffrées sont refusées.

  • Chaque instance dispose d'un quota de connexion par minute, qu'il s'agisse de connexions réussies ou pas. Lorsque le quota est dépassé, les connexions sont temporairement indisponibles. Nous vous recommandons d'éviter les connexions fréquentes et de restreindre les connexions à l'aide de réseaux autorisés.

Étapes suivantes