Como crear usuarios y asignar permisos en PostgreSQL

En este tutorial veremos como crear un nuevo usuario y darle permisos sobre una base de datos usando postgreSQL, concretamente necesitaremos los siguientes comandos:

  • adduser: comando utilizado agregar usuarios en un sistema UNIX/Linux
  • psql: Llamada al interprete de comandos de postgreSQL (Si quieres ver una guia de la instalacion puedes revisar Instalar PostgreSQL 9.2 en Mac OSX).
  • CREATE USER: Sirve para dar de alta un nuevo usuario en el gestor de base de datos.
  • CREATE DATABASE: Crea una nueva base de datos.
  • GRANT ALL PRIVILEGES: Define los privilegios que un usuario tendra sobre una base de datos.

Los siguientes pasos fueron probados utilizando debian squeeze 6, sin embargo el procedimiento no debería de variar mucho en otras distribuciones de Linux (tal vez y algunos comandos del sistema son diferentes pero no mas).

Desde la terminal

Lo primero que tenemos que hacer es crear un nuevo usuario en el sistema (necesitamos privilegios de root)

# adduser alevsk
# passwd alevsk

Despues tenemos que acceder como el super usuario de postgresql (por lo general es postgres)

# su - postgres

Luego mandamos llamar el interprete del gestor indicando un usuario y una base de datos, por defecto también es postgres y postgres (usuario y base de datos).

# psql -h localhost -d postgres -U postgres

Si todo va bien la consola debería de mostrar algo como esto:

You are using psql, the command-line interface to PostgreSQL.
Type:  \copyright for distribution terms
       \h for help with SQL commands
       \? for help with psql commands
       \g or terminate with semicolon to execute query
       \q to quit
postgres=# 

Una vez dentro simplemente indicamos que queremos agregamos un nuevo usuario.

postgres=# CREATE USER alevsk WITH PASSWORD 'elpassword';

Luego creamos la base de datos.

postgres=# CREATE DATABASE blog;

Y finalmente damos los privilegios al usuario sobre la base de datos que acabamos de crear.

postgres=# GRANT ALL PRIVILEGES ON DATABASE blog to alevsk;
postgres=# \q

Y listo, ahora para corroborar que lo hicimos bien podemos intentar acceder al gestor con la cuenta que acabamos de crear.

$ su - alevsk
$ psql –h localhost -d blog -U alevsk

Si todo salió bien la salida seria:

Welcome to psql 7.4.16, the PostgreSQL interactive terminal.
Type:  \\copyright for distribution terms
       \\h for help with SQL commands
       \\? for help on internal slash commands
       \\g or terminate with semicolon to execute query
       \\q
blog=>

salu2

Si te gusto comparte ...Share on FacebookShare on Google+Tweet about this on TwitterShare on LinkedIn

3 pensamientos en “Como crear usuarios y asignar permisos en PostgreSQL

  1. USUARIO
    Internet Explorer 8.0 Windows 7

    El pop que pones esta muy bien solamente que te falto indagar mas sobre la parte de los derechos de postgres, ya que cuando creas el usuario de postgres trae ciertos privilegios para crear sus propios objetos, te recomiendo como poner como indicas quitarle esos derechos al usuario y despues como darselos como lo indicas en este punto.

    Saludos

    Responder

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *