À propos de la gestion des utilisateurs de base de données dans AlloyDB pour PostgreSQL

Cette page explique comment gérer les utilisateurs de base de données dans AlloyDB pour PostgreSQL et activer l'authentification Identity and Access Management (IAM) pour ces utilisateurs de base de données.

Fonctionnement de la gestion des utilisateurs de bases de données

AlloyDB partage les mêmes concepts de rôles, d'utilisateurs et de groupes que PostgreSQL. Pour obtenir une brève explication, consultez les descriptions suivantes:

  • Rôle: désignation de niveau supérieur qui décrit à la fois les utilisateurs de base de données et les groupes d'utilisateurs de base de données dans un cluster. Les rôles fournissent et limitent l'accès aux objets de base de données, tels que les tables et les fonctions.

  • Utilisateur: rôle auquel est attribué l'attribut LOGIN. Les utilisateurs peuvent s'authentifier et se connecter aux clusters de bases de données AlloyDB.

  • Groupe: rôle accordé à un ou plusieurs utilisateurs. Les groupes ont pour but de contrôler les droits dont disposent de nombreux utilisateurs dans leur ensemble.

Fonctionnement de l'authentification de base de données

Pour vous authentifier et vous connecter à vos clusters de bases de données AlloyDB, vous avez deux options:

  • Authentification standard PostgreSQL basée sur un mot de passe : vérifie l'identité de l'utilisateur en comparant les identifiants fournis aux mots de passe hachés stockés. Les méthodes acceptées sont md5, scram-sha-256 et password.
  • Authentification IAM : permet aux utilisateurs de la base de données de s'authentifier à l'aide d'IAM pour une sécurité renforcée et un contrôle centralisé des accès sur d'autres servicesGoogle Cloud .

Rôles prédéfinis

PostgreSQL fournit des rôles prédéfinis avec différents privilèges. En plus de ces rôles prédéfinis, AlloyDB fournit plusieurs autres rôles d'utilisateur et de groupe prédéfinis.

Les tableaux suivants répertorient les rôles et les droits associés qu'AlloyDB fournit.

Nom du rôle Droits
alloydbsuperuser CREATEROLE, CREATEDB et LOGIN.
postgres CREATEROLE, CREATEDB et LOGIN.
alloydbimportexport CREATEROLE et CREATEDB.
alloydbagent CREATEROLE et CREATEDB.
alloydbreplica REPLICATION
alloydbiamuser Par défaut, ce rôle ne dispose d'aucun droit.

Les sous-sections suivantes expliquent à quoi servent certains de ces rôles.

Rôle de groupe alloydbsuperuser

alloydbsuperuser vous permet de configurer votre système de base de données et d'effectuer d'autres tâches de super-utilisateur. Ce rôle dispose des droits suivants:

  • Créer des extensions nécessitant des droits de super-utilisateur
  • Créer des déclencheurs d'événements
  • Créer des utilisateurs de réplication
  • Créer des publications et des abonnements de réplication

En tant que service géré, AlloyDB ne vous permet pas d'accorder aux utilisateurs le rôle superuser PostgreSQL. À la place, vous pouvez accorder à n'importe quel utilisateur de base de données des droits de super-utilisateur AlloyDB en lui attribuant le rôle alloydbsuperuser.

Rôle utilisateur postgres

Le rôle utilisateur postgres fait partie de alloydbsuperuser. Lorsque vous créez un cluster AlloyDB, vous attribuez un mot de passe à postgres. Vous vous connectez ensuite à votre système à l'aide de postgres pour effectuer des tâches telles que la création de bases de données ou de rôles supplémentaires.

Rôle utilisateur alloydbimportexport

Lorsque vous créez un cluster AlloyDB, AlloyDB crée alloydbimportexport avec l'ensemble minimal de droits requis pour les opérations d'importation et d'exportation.

Vous pouvez créer vos propres utilisateurs pour effectuer ces opérations. Si vous ne créez pas d'utilisateur alloydbimportexport personnalisé, le système utilise l'utilisateur alloydbimportexport par défaut pour les opérations d'importation et d'exportation.

alloydbimportexport est un utilisateur système. Cela signifie que vous ne pouvez pas utiliser directement l'utilisateur alloydbimportexport pour vous connecter ou effectuer d'autres opérations dans vos bases de données PostgreSQL.

Rôle de groupe alloydbiamuser

Les utilisateurs de la base de données du groupe alloydbiamuser s'authentifient auprès d'une instance AlloyDB à l'aide d'IAM, au lieu d'utiliser l'authentification par mot de passe PostgreSQL standard.

AlloyDB ne vous permet pas d'accorder alloydbiamuser aux utilisateurs à l'aide de la commande PostgreSQL GRANT ou de méthodes similaires. Vous pouvez plutôt utiliser les outils d'administration AlloyDB pour créer et gérer des utilisateurs de base de données basés sur l'IAM. Pour en savoir plus, consultez la page Gérer l'authentification IAM.

Étape suivante