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 esos 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 breve explicación, consulta las siguientes descripciones:

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

  • Usuario: Es el rol al que se le otorga 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 tienen muchos usuarios 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 integrada basada en contraseñas de PostgreSQL: Para verificar la identidad del usuario, AlloyDB compara las credenciales proporcionadas con las contraseñas almacenadas y hash. Los métodos admitidos incluyen md5, scram-sha-256 y password.
  • Autenticación de IAM: Permite que los usuarios de la base de datos se autentiquen con IAM. Esto proporciona mayor seguridad y centraliza el control de acceso 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 de grupo predefinidos más.

En las siguientes tablas, se enumeran los roles y los privilegios de los 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 privilegios.

En las siguientes subsecciones, se explican los usos de estos roles.

Rol de grupo alloydbsuperuser

alloydbsuperuser te permite configurar tu sistema de bases de datos y realizar otras tareas de superusuario. Esta función tiene los siguientes privilegios:

  • Crear extensiones que requieran privilegios de superusuario
  • Crea activadores de eventos
  • Crea usuarios de replicación
  • Crear 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 otorgar privilegios de superusuario de AlloyDB a cualquier usuario de la base de datos si le asignas el rol alloydbsuperuser.

postgres rol de usuario

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

alloydbimportexport rol de usuario

Cuando creas un clúster de AlloyDB, AlloyDB crea alloydbimportexport con el conjunto mínimo de privilegios que requiere 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 el usuario alloydbimportexport para acceder o realizar otras operaciones en tus bases de datos de PostgreSQL.

alloydbagent rol de usuario

El rol alloydbagent es un rol interno del sistema de AlloyDB. El servicio de AlloyDB administra el rol, y no puedes otorgarlo manualmente a las cuentas de bases de datos. Esta administración garantiza que la base de datos y sus funciones funcionen correctamente.

alloydbreplica rol de usuario

El rol alloydbreplica es un rol interno del sistema de AlloyDB. El servicio de AlloyDB administra el rol, y no puedes otorgarlo manualmente a las cuentas de bases de datos. Esta administración garantiza que la base de datos y sus funciones funcionen correctamente.

Rol de grupo alloydbiamuser

Los usuarios de la base de datos dentro del grupo alloydbiamuser se autentican con una instancia de AlloyDB a través de IAM, en lugar de usar la autenticación basada en contraseñas integrada de PostgreSQL.

AlloyDB no te permite otorgar alloydbiamuser a los usuarios con el comando GRANT de PostgreSQL ni con métodos similares. En cambio, 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 Administra la autenticación de IAM.

¿Qué sigue?