USUARIOS
CREACIÓN DE USUARIOS EN POSTGRESQL
CREATE USER name [ [ WITH ] option
[ ... ] ]
Donde las opciones pueden ser
SUPERUSER | NOSUPERUSER
| CREATEDB | NOCREATEDB
| CREATEROLE | NOCREATEROLE
| CREATEUSER | NOCREATEUSER
| LOGIN | NOLOGIN
| VALID UNTIL 'timestamp'
| CONNECTION LIMIT connlimit
|
[ENCRYPTED | UNENCRYPTED] PASSWORD 'password'
MODIFICACIÓN DE USUARIOS
ALTER
USER name
Donde las opciones pueden ser
| CREATEDB | NOCREATEDB
| LOGIN | NOLOGIN
| CREATEUSER |
NOCREATEUSER
| PASSWORD 'password'
| VALID UNTIL 'timestamp'
| CONNECTION LIMIT connlimit
EJEMPLO
ALTER USER motores PASSWORD ‘motores’ CREATEDB
CREATEUSER;
ALTER USER motores VALID UNTIL ‘2014-12-31 23:59:59’;
CAMBIAR EL NOMBRE A UN USUARIO
ALTER USER NOMBRE_ANTERIOR RENAME TO
NUEVO_NOMBRE
BORRAR USUARIOS
DROP USER Nombre del usuario a eliminar [CASCADE];
PRIVILEGIOS
Son los permisos que tiene
un usuario o un grupo de usuarios para realizar operaciones específicas en las
bases de datos. Estos privilegios se clasifican en privilegios del sistema (sirven
para realizar operaciones que afectan a todo el sistema) y privilegios de
objeto (sirven para realizar operaciones sobre los objetos de la base de datos
como son tablas, vistas, entre otros).
DAR
PRIVILEGIOS (GRANT)…SINTAXIS
GRANT { { SELECT | INSERT | UPDATE
| DELETE | TRIGGER }
[, ...] | ALL [ PRIVILEGES ] }
ON [ TABLE ] tablename [, ...]
TO { username | PUBLIC } [ WITH GRANT OPTION ]
GRANT { CREATE | CONNECT ALL
[ PRIVILEGES ] }
ON DATABASE dbname
TO {username | PUBLIC } [ WITH
GRANT OPTION ]
EJEMPLO
GRANT SELECT, INSERT, UPDATE ON bancos,
sucursales TO nombre_usuario;
GRANT CONNECT ON DATABASE operaciones TO nombre_usuario;
QUITAR PRIVILEGIOS DE ACCESO (REKOVE)…SINTAXIS
REVOKE [ GRANT]
{ { SELECT | INSERT | UPDATE |
DELETE | TRUNCATE | TRIGGER }
[, ...] | ALL [ PRIVILEGES ] }
ON { [ TABLE ] table_name [,
...]
| ALL TABLES IN SCHEMA
schema_name [, ...] }
FROM { [role_name | PUBLIC }
[, ...]
REVOKE [ GRANT OPTION FOR ]
{ { CREATE | CONNECT } [, ...]
| ALL [ PRIVILEGES ] }
ON DATABASE database_name [,
...]
FROM {role_name | PUBLIC } [,
...]
EJEMPLO
REVOKE ALL ON DATABASE operaciones FROM nombre_rol;
REVOKE INSERT ON films FROM nombre_rol;
TABLESPACE
Un tablespace es una unidad lógica de almacenamiento dentro de una base
de datos.
CREACIÓN DE TABLESPACE
CREATE
TABLESPACE nombre_del_tablespace location 'ruta/carpeta';
ROLES
Los roles son grupos de permisos, al dar varios permisos a un rol
permite concederlos a uno o varios usuarios.
CREACIÓN DE ROLES
CREATE ROLE nombre del rol
DAR PRIVILEGIOS A LOS ROLES
GRANT permiso1 [, permiso2,...]
ON
[usuario.]Objeto
TO nombre
del rol
DAR UN ROL A USUARIO
GRANT nombre del rol TO nombre
del usuario1, nombre del usuario2, ……., nombre del usuarioN;