Volver a la página principal
sábado 23 noviembre 2024
24

Cómo crear usuarios en PostgreSQL

En PostgreSQL, los usuarios son esenciales para gestionar la autenticación y los permisos dentro de la base de datos. Crear usuarios permite definir quién puede acceder al sistema y qué privilegios tienen.

Crear un usuario en PostgreSQL

La creación de un usuario se realiza mediante el comando CREATE USER o el más general CREATE ROLE. A continuación se explica cómo hacerlo.

Sintaxis básica

CREATE USER nombre_usuario WITH PASSWORD 'contraseña';

Parámetros

Parámetro Descripción
nombre_usuario El nombre del usuario que deseas crear.
PASSWORD Establece una contraseña para el usuario. Es opcional si no requiere autenticación.

Ejemplo básico

Crear un usuario llamado mi_usuario con la contraseña mi_contraseña:

CREATE USER mi_usuario WITH PASSWORD 'mi_contraseña';

Opciones avanzadas

Puedes personalizar el usuario con atributos adicionales:

Atributo Descripción
SUPERUSER Permite que el usuario tenga todos los privilegios.
CREATEDB Autoriza al usuario para crear bases de datos.
CREATEROLE Permite al usuario crear otros roles o usuarios.
LOGIN Habilita el acceso al sistema (implícito con CREATE USER).
INHERIT Hereda permisos de roles asignados al usuario.
CONNECTION LIMIT Especifica el número máximo de conexiones permitidas para el usuario.

Ejemplo con atributos

Crear un usuario con permisos para crear bases de datos y un límite de 5 conexiones:

CREATE USER desarrollador WITH PASSWORD 'segura123' CREATEDB CONNECTION LIMIT 5;

Modificar un usuario existente

Si necesitas cambiar atributos de un usuario ya creado, usa ALTER USER:

ALTER USER mi_usuario WITH PASSWORD 'nueva_contraseña';
ALTER USER mi_usuario CREATEDB;

Eliminar un usuario

Para borrar un usuario de PostgreSQL, utiliza DROP USER:

DROP USER mi_usuario;

Asignar permisos a un usuario

Una vez creado el usuario, puedes asignarle permisos para acceder a bases de datos o tablas específicas.

Ejemplo: Conceder acceso a una base de datos

GRANT CONNECT ON DATABASE mi_base_de_datos TO mi_usuario;

Ejemplo: Conceder permisos sobre una tabla

GRANT SELECT, INSERT ON TABLE mi_tabla TO mi_usuario;

Recursos adicionales

Consulta la documentación oficial de PostgreSQL para más información sobre la gestión de usuarios.

Compartir:
Creado por:
Author photo

Jorge García

Fullstack developer