Post on 13-Dec-2014
description
Curso Básico de PostgreSQL – Ing. Eddie Malca Vicente
Creación de Roles en PostgreSQL
Ing. Eddie Malca VicenteEmail: emalca@gmail.com
Twitter: @emalca
Curso Básico de PostgreSQL – Ing. Eddie Malca Vicente
Qué son los Roles• Al instalar PostgreSQL, se crea un
usuario del sistema operativo llamado postgres. Adicionalmente, se crea un rol y una base de datos con el mismo nombre (postgres) en el sistema de bases de datos.
• En PostgreSQL, el concepto de rol puede pensarse como un usuario de bases de datos o como un grupo de usuarios de bases de datos.
• El rol postgres tiene cualidades de superusuario .
Curso Básico de PostgreSQL – Ing. Eddie Malca Vicente
Creación de Roles• Un rol puede ser pensado como un usuario
o como un grupo de usuarios, no están ligados a una base de datos, son generales a todo el cluster de base de datos.
• Los roles se guardan en una tabla de catálogo del sistema PostGreSQL llamada pg_roles. Su sintaxis es:
CREATE ROLE nombre [PRIVILEGIOS];
Curso Básico de PostgreSQL – Ing. Eddie Malca Vicente
Privilegios de Roles• SUPERUSER: Puede crear y destruir objetos, asignar roles,
iniciar replicas. Le está permitido todo, por eso debe asignarse con cuidado.
• CREATEDB : Puede crear bases de datos.• CREATEROLE: Puede crear roles.• REPLICATION : Puede iniciar replicas.• NOREPLICATION: No puede iniciar replicas.• PASSWORD: Asigna una clave al rol.• LOGIN: Para que pueda iniciar sesión en el servidor• VALID UNTIL: Se especifica una fecha y hora hasta la cual es
válido el rol creado. Sino se especifica no hay inconveniente, significa que no expira la cuenta.
Curso Básico de PostgreSQL – Ing. Eddie Malca Vicente
Crear Roles• CREATE ROLE mirol LOGIN PASSWORD
‘qwerty’;• CREATE ROLE otrorol LOGIN PASSWORD
‘12345678‘ SUPERUSER; • CREATE ROLE masrol LOGIN PASSWORD
‘abcd1234‘ VALID UNTIL ‘2013-08-30’;
Curso Básico de PostgreSQL – Ing. Eddie Malca Vicente
Listar Roles
• Para listar los Roles existentes:• SELECT rolname FROM pg_roles;
Curso Básico de PostgreSQL – Ing. Eddie Malca Vicente
Modificar un Rol• Podemos modificar las opciones de
un rol previamente creado con la siguiente sintaxis:
ALTER ROLE nombre WITH nuevos privilegios;
Curso Básico de PostgreSQL – Ing. Eddie Malca Vicente
Modificar Roles
• ALTER ROLE eddie WITH CREATE ROLE;
• ALTER ROLE mirol WITH VALID UNTIL ‘2013-08-30’;
Curso Básico de PostgreSQL – Ing. Eddie Malca Vicente
Eliminar un Rol• Podemos eliminar un rol previamente
creado con la siguiente sintaxis:
DROP ROLE nombre-rol;
Curso Básico de PostgreSQL – Ing. Eddie Malca Vicente
Eliminar Roles
• DROP ROLE eddie; • DROP ROLE mirol;
Curso Básico de PostgreSQL – Ing. Eddie Malca Vicente
Creación de Roles en PostgreSQL
Ing. Eddie Malca VicenteEmail: emalca@gmail.com
Twitter: @emalca