Acerca de la administración de usuarios de bases de datos en AlloyDB para PostgreSQL

En esta página, se proporciona una descripción general sobre cómo administrar usuarios de bases de datos en AlloyDB para PostgreSQL y habilitar la autenticación de Identity and Access Management (IAM) para estos usuarios de bases de datos.

Cómo funciona la administración de usuarios de bases de datos

AlloyDB comparte los mismos conceptos de roles, usuarios y grupos que PostgreSQL. Para obtener una explicación breve, consulta las siguientes descripciones:

  • Rol: Designación de nivel superior que describe a los usuarios de la base de datos y a los grupos de usuarios de la base de datos en un clúster. Los roles proporcionan y restringen el acceso a los objetos de la base de datos, como las tablas y las funciones.

  • Usuario: Es el rol al que se le asigna el atributo LOGIN. Los usuarios pueden autenticarse y acceder a los clústeres de bases de datos de AlloyDB.

  • Grupo: Es el rol que se otorga a uno o más usuarios. El objetivo de los grupos es controlar los privilegios que muchos usuarios tienen en conjunto.

Cómo funciona la autenticación de bases de datos

Para autenticarte y acceder a tus clústeres de bases de datos de AlloyDB, tienes dos opciones:

  • Autenticación estándar basada en contraseñas de PostgreSQL: Verifica la identidad del usuario comparando las credenciales proporcionadas con las contraseñas almacenadas y con hash. Los métodos admitidos incluyen md5, scram-sha-256 y contraseña.
  • Autenticación de IAM: Permite que los usuarios de la base de datos se autentiquen con IAM para mejorar la seguridad y el control de acceso centralizado en otros servicios deGoogle Cloud .

Funciones predefinidas

PostgreSQL proporciona roles predefinidos con varios privilegios. Además de estos roles predefinidos, AlloyDB proporciona varios roles de usuario y grupo predefinidos más.

En las siguientes tablas, se enumeran los roles y los privilegios de roles que proporciona AlloyDB.

Nombre del rol Privilegios
alloydbsuperuser CREATEROLE, CREATEDB y LOGIN.
postgres CREATEROLE, CREATEDB y LOGIN.
alloydbimportexport CREATEROLE y CREATEDB.
alloydbagent CREATEROLE y CREATEDB.
alloydbreplica REPLICATION
alloydbiamuser De forma predeterminada, este rol no tiene ningún privilegio.

En las siguientes sub secciones, se explica para qué sirven algunos de estos roles.

Rol de grupo alloydbsuperuser

alloydbsuperuser te permite configurar tu sistema de bases de datos y realizar otras tareas de superusuario. Este rol tiene los siguientes privilegios:

  • Crear extensiones que requieran privilegios de superusuario
  • Cómo crear activadores de eventos
  • Crea usuarios de replicación
  • Crea suscripciones y publicaciones de replicación

Como servicio administrado, AlloyDB no te permite otorgar a los usuarios el rol superuser de PostgreSQL. En su lugar, puedes otorgarle a cualquier usuario de la base de datos privilegios de superusuario de AlloyDB otorgándole el rol alloydbsuperuser.

Rol de usuario de postgres

El rol de usuario postgres es parte de alloydbsuperuser. Cuando creas un clúster de AlloyDB, le asignas una contraseña a postgres. Luego, accede a tu sistema con postgres para realizar tareas como crear bases de datos o roles adicionales.

Rol de usuario de alloydbimportexport

Cuando creas un clúster de AlloyDB, AlloyDB crea alloydbimportexport con el conjunto mínimo de privilegios necesarios para las operaciones de importación y exportación.

Puedes crear tus propios usuarios para realizar estas operaciones. Si no creas un usuario alloydbimportexport personalizado, el sistema usará el usuario alloydbimportexport predeterminado para las operaciones de importación y exportación.

alloydbimportexport es un usuario del sistema. Esto significa que no puedes usar directamente al usuario alloydbimportexport para acceder ni realizar otras operaciones en tus bases de datos de PostgreSQL.

Rol de grupo alloydbiamuser

Los usuarios de la base de datos del grupo alloydbiamuser se autentican con una instancia de AlloyDB mediante IAM, en lugar de usar la autenticación basada en contraseña estándar de PostgreSQL.

AlloyDB no te permite otorgar alloydbiamuser a los usuarios con el comando GRANT de PostgreSQL ni métodos similares. En su lugar, puedes usar las herramientas administrativas de AlloyDB para crear y administrar usuarios de bases de datos basados en IAM. Para obtener más información, consulta Cómo administrar la autenticación de IAM.

¿Qué sigue?