Siguiendo con el tutorial de instalación de Postgres en Debian 10, ahora lo que vamos a hacer es crear un usuario y crear una base de datos, también veremos los comandos para eliminar dicho usuario o asignar permisos, algo muy básico.

1- Crear usuario

Ingresamos a postgres haciendo:

sudo -u postgres psql

Creamos el usuario

CREATE USER nksistemas PASSWORD 'TU_PASSWORD';

2- Eliminar Usuario

DROP USER nksistemas;

3- ALTER ROLE

El manejo de roles en PostgreSQL permite diferentes configuraciones, entre ellas tenemos:

  • SUPERUSER/NOSUPERUSER. Super usuario, privilegios para crear bases de datos y usuarios.
  • CREATEDB/NOCREATEDB. Permite crear bases de datos.
  • CREATEROLE/NOCREATEROLE. Permite crear roles.
  • CREATEUSER/NOCREATEUSER. Permite crear usuarios.
  • LOGIN/NOLOGIN. Este atributo hace la diferencia entre un rol y usuario. Ya que el usuario tiene permisos para acceder a la base de datos a traves de un cliente.
  • PASSWORD. Permite alterar la contraseña.
  • VALID UNTIL. Expiración de usuarios.

Para cambiar la configuración de un usuario o rol debemos ejecutar el siguiente comando.

ALTE ROLE <nombre del rol> WITH <opciones>

4- Asignar permisos de super usuario a un usuario

El permiso de super usuario es el mas alto. Con este usuario se podrán administrar todos los objetos del motor de base de datos.

Para asignar este privilegio a un rol lo hacemos con el siguiente comando:

ALTER ROLE nksistemas WITH SUPERUSER;

5- Cambiar la contraseña de un usuario

Para cambiar la contraseña de un usuario es necesario ejecutar el siguiente comando:

ALTER ROLE nksistemas WITH PASSWORD 'NUEVO_PASSWORD';

6- Crear una base de datos con un usuario específico como propietario

Todas las bases de datos que creamos con un usuario que tenga los privilegios CREATEDB automáticamente asignan como propietario al usuario mismo. Si lo que queremos crear es un usuario limitado, la forma de crearlo con una base de datos específica será:

CREATE DATABASE nksistemas_db WITH OWNER nksistemas;

7- Asignar todos los permisos a un usuario a una base de datos existente

Cuando recién hemos creado un usuario y queremos darle permisos a una base de datos existente, vamos a utilizar el siguiente comando para que la pueda controlar:

GRANT ALL PRIVILEGES ON DATABASE nksistemas_db TO nksistemas;

Deja un comentario