Vous êtes sur la page 1sur 5

Control de cuentas de usuario

Tópicos para administrar cuentas de


usuario en PostgreSQL

Bases de Datos Distribuidas. Ingeniería en Software


Facultad de Telemática. Universidad de Colima.
rherrera - Febrero 2011
Cuentas de usuario en postgreSQL
• En postgreSQL se pueden crear ROLES para facilitar la
administración de privilegios
--creación de rol de superusuario
CREATE ROLE usuario_admin SUPERUSER
INHERIT NOCREATEDB NOCREATEROLE;
--creación de rol de usuario cualquiera
CREATE ROLE usuario_normal NOSUPERUSER
INHERIT NOCREATEDB NOCREATEROLE;

• Después se pueden crear los LOGINs (usuarios) asociados


a los ROLES
--definición de un usuario con posibilidad de acceso (login)
CREATE ROLE usuario1 LOGIN
PASSWORD ‘patito' VALID UNTIL '2011-02-28'
NOSUPERUSER INHERIT NOCREATEDB NOCREATEROLE;
--vinculación del usuario a un rol
GRANT usuario_admin TO usuario1;
Cuentas de usuario en postgreSQL …

• Se crean schemas para conceder/restringir


acceso a objetos de la base de datos:
--creación del schema
CREATE SCHEMA ventas;
CREATE SCHEMA productos;

-- A los roles se permite la conexión a los schemas


GRANT USAGE ON SCHEMA ventas TO usuario_admin;
GRANT USAGE ON SCHEMA productos TO usuario_normal;

-- definición puntual de permisos sobre objetos del schema


GRANT SELECT,INSERT,DELETE,UPDATE ON ventas.ganancias
TO usuario_admin;
GRANT SELECT ON productos.listaproductos TO usuario_normal;
Cuentas de usuario en postgreSQL …

Adicionalmente, se deben de habilitar las direcciones IP desde las


cuales cada usuario podría tener permiso de conexión, esto se hace
modificando el archivo pg_hba.conf desde el pgAdmin

En PCs con Windows7 o Windows Vista, puede ser necesario


habilitar el acceso para direcciones tipo IPV6 (notación ::1)
Práctica. Control de usuarios en postgreSQL

1. Habilitar/instalar el motor de datos PostgreSQL 9.X


2. Creación de 3 ROLes de usuario y sus respectivos LOGins:
– Usuario1  administrador (todos los permisos)
– Usuario2  normal (lectura y escritura)
– Usuario3  visitante (solo lectura)
3. Crear una base de prueba, con al menos un schema y una tabla
4. Asignar diferentes permisos a la base de prueba
5. Habilitar acceso local y después acceso remoto a IP especifica,
configurando el archivo pg_hba.conf
6. Hacer pruebas de conectividad y verificación de privilegios de
usuario.
7. Documentación de la práctica

Vous aimerez peut-être aussi