Es recomendable tener un usuario por base de datos por temas de seguridad; de esta manera el usuario para una base de datos no puede acceder a las otras.
En este post vamos a ver cómo:
- Crear un usuario de PostgreSQL
- Crear una base de datos
- Conceder permisos de la base de datos al usuario
Todo esto en PostgreSQL.
Entrar a la CLI
Inicia sesión en PostgreSQL con:
psql -U postgres
O si tienes otro usuario, hazlo con el mismo.
Si no puedes entrar, mira este tutorial de Windows o de Linux.
Crear base de datos
Para crear una base de datos en PostgreSQL ejecuta:
create database nombre_bd;
Luego puedes mostrarlas con \l
.
Crear usuario
Para crear un usuario ejecuta:
create user tu_usuario with encrypted password 'tu_contraseña';
Más tarde, puedes mostrarlos con \du
.
Dar permisos a usuario
Para conceder los privilegios a un usuario sobre una base de datos, ejecuta:
grant all privileges on database tu_bd to tu_usuario;
De nuevo, puedes listar a los usuarios con \du
y conectarte a la base de datos con \c nombre_bd
.
Además de los permisos de la base de datos, hay que dar permisos a la tabla. Primero, conecta a la base de datos con:
\c base_de_datos
Y una vez dentro, ejecuta:
GRANT ALL PRIVILEGES ON ALL TABLES IN SCHEMA public TO tu_usuario;
GRANT ALL PRIVILEGES ON ALL SEQUENCES IN SCHEMA public TO tu_usuario;
La próxima vez que entres a psql ejecuta:
psql -U usuario nombre_bd
En mi caso:
psql -U parzibyte mascotas
Ya que solo vas a entrar a administrar esa base de datos.
Gracais en la ultima parte
para entrar psql ejecuta:
antes me parece primero ir y modificar : /etc/postgresql/13/main/pg_hba.conf
cambiar el método de cifrado de “peer” a “md5”
psql -U usario3 dbname3
Gracais por el articulo
Pingback: Postgres: Peer authentication failed for user - Parzibyte's blog