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 breve explicación, consulta las siguientes descripciones:
Rol: Es la designación de nivel superior que describe a los usuarios y 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 estándar basada en contraseñas de PostgreSQL: Verifica la identidad del usuario comparando 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 para mejorar la seguridad y centralizar 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 grupo predefinidos más.
En la siguiente tabla, 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 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. 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 otorgándole el rol alloydbsuperuser
.
postgres
rol de usuario
El rol de usuario postgres
forma 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 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 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 la administra y no se puede otorgar manualmente a las cuentas de bases de datos, lo que garantiza el funcionamiento adecuado de la base de datos y sus funciones.
alloydbreplica
rol de usuario
El rol alloydbreplica
es un rol interno del sistema de AlloyDB. El servicio de AlloyDB la administra y no se puede otorgar manualmente a las cuentas de bases de datos, lo que garantiza el funcionamiento adecuado de la base de datos y sus funciones.
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 estándar basada en contraseñas 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?
Aprende a administrar roles, usuarios y grupos de PostgreSQL para AlloyDB con la autenticación estándar.
Obtén información para administrar la autenticación de IAM.