Вы находитесь на странице: 1из 5

INFORME DE LA PRESENTACION DE USUARIOS DE POSTGRES

Docente: Lic. Celia Tarquino Inf-272

UNIV. GIOVANNKA OLIVER FERRUFINO

INTRODUCCION

a serie de laboratorios de Administracin de Bases de Datos con PostgreSQL, muestra de


forma prctica la administracin de este tipo de sistemas, el cual tiene un amplio uso en la
industria de desarrollo de software. Mientras que las bases de datos son la herramienta
que requieren las empresas que necesitan almacenar la informacin que generan, es en
este tipo de sistemas donde se guarda sta. De ah la importancia de entender y aplicar
los conceptos de administracin estndar que se usa en la industria. Se usa el sistema
PostgreSQL debido a que ofrece los mecanismos que tienen otros sistemas similares pero
de carcter propietario. PostgreSQL se ofrece bajo una licencia PostgresSQL, lo que
permite desde el punto de vista del propietario de un sistema de informacin evitar el pago
de costosas licencias por el uso de una base de datos.

Privilegios (CREATEDB y CREATEUSR)

Cuando se crea un nuevo usuario, se puede controlar algunas de las actividades que
estos realizan en la base de datos, tal como el permiso de crear nuevas bases de datos.
Tambin puede controlar la actividad de crear nuevos usuarios. Dar al usuario el derecho
de crear nuevas bases de datos o crear nuevos usuarios es un riesgo. Cuando asigna
privilegios a un usuario con CREATEUSER, ese usuario llega a ser un sper usuario en el
clster. Se debe decir que sta es una forma ligeramente diferente: un usuario que tiene
privilegios por CREATEUSER puede sobrepasar todas las restricciones en el clster de
base de datos. Se puede negar explcitamente los privilegios con CREATEUSER
especificando NOCREATEUSER, NOCREATEUSER es asumido si no se especfica otro
valor.

Las opciones de CREATEDB dan al usuario el derecho de crear nuevas bases de


datos (dentro del clster). Se puede especificar NOCREATEDB para prohibir al usuario
crear nuevas bases de datos. Si especifica CREATEDB no NOCREATEDB, CREATE
USER asumir NOCREATEDB.

Administracin de Grupos

Se pueden definir grupos de usuarios para hacer la administracin mucho ms fcil. Cada
grupo puede incluir usuarios. Cada usuario puede llegar a pertenecer a uno o ms grupos.
Cuando se otorga o revocan privilegios para un objeto, se puede identificar un usuario
especfico o un grupo de usuarios.
Cada usuario es automticamente miembro de un grupo PUBLIC. PUBLIC es
realmente un grupo virtual, no puede agregar o remover miembros y no puede borrar este
grupo, pero se permite asociar privilegios con PUBLIC.

Los grupos son mucho ms fciles de manejar, si ellos coinciden con los roles en
la organizacin. Por ejemplo, quiz construya grupos nombrados como: desarrolladores,
invitados, cajeros y administradores. Los grupos se deben ordenar de forma que reflejen
el mundo real, los grupos hacen que sea mucho ms fcil asignar privilegios en los
objetos de la base de datos. Un objeto dado puede pertenecer a muchos grupos. Por
ejemplo, un miembro del grupo de los desarrolladores quiz tambin pertenezca al de los
administradores.

Las definiciones de los grupos son almacenados en las tablas del sistema. Como los
usuarios de la base de datos, las definiciones del grupo son almacenadas para toda la
base de datos dentro de un clster.

CREATE GROUP

Un sper usuario PostgreSQL puede crear un nuevo grupo usando el comando CREATE
GROUP:

CREATE GROUP nombre_grupo [ [WITH] option [...] ]

El nombre de grupo debe reunir las reglas para los identificadores de PostgreSQL (31
caracteres o menos, comillas o iniciar con una letra o subrayado). Puedes incluir un valor
SYSID si quiere asignar un identificador numrico para el nuevo grupo. Nosotros
conocemos cada grupo de usuarios por su nombre, pero alguna tabla que se refiera al
grupo se referir al valor numrico. Quiz asigne un identificador numrico especfico para
un grupo por las mismas razones que se asigna un identificador especfico para un
usuario.

Puede asignarse un miembro a un grupo de tres maneras:

Usar la opcin IN GROUP en el comando CREATE USER

Lista los nombres de usuarios en el USER opcin de CREATE GROUP

Cambia los miembros del grupo usando el comando ALTER GROUP

Un tpico comando es CREATE GROUP con el que quiz se vea algo como esto:
CREATE GROUP desarrolladores USER Bernardo, lety;
[ [WITH] option]...

Este comando crea un nuevo grupo nombrado desarrolladores que inicialmente tiene dos
miembros Bernardo y Lety.

Crear Usuarios

Hay dos formas de crear un nuevo usuario: ejecutando el comando CREATE USER desde
una aplicacin cliente (tal como un psql), o con el createuser del shell script.

La sintaxis completa para el comando CREATE USER es:

CREATE USER nombre_usuario


[ [WITH] option]...
option := SYSID user-id-number
| [NO] CREATEDB
| [NO] CREATEUSER
| IN GROUP groupname[, ...]
| [ [UN] ENCRYPTED ] PASSWORD password
| VALID UNTIL expiration

Un nombre-usuario debe conformar las reglas usuales para los identificadores


PostgreSQL: esto debe iniciar con una letra (o un subrayado) y debe tener 31 caracteres
de extensin. Si necesitas iniciar un nombre de usuario con un nmero, slo encierra el
nombre con comillas dobles.

Vistas

Las vistas son pseudo-tablas, esto es, que no son tablas reales, sin embargo aparecen
como tablas ordinarias para seleccionar. Una vista puede representar un subconjunto de
una tabla real, seleccionando ciertas columnas o ciertas filas de una tabla ordinaria.
Incluso, una vista puede representar a varias tablas unidas. Debido a que a las vistas se
les asignan permisos por separado, se les puede usar para restringir acceso a una tabla.
Las vistas son creadas utilizando el comando CREATE VIEW.
Creacin de reglas

Sintaxis

CREATE RULE name AS ON event


TO object [ WHERE condition ]
DO [ INSTEAD ] [ action | NOTHING ]

name - El nombre de la regla a crear.


event - Evento puede ser select, update, delete o insert.
object - Objeto puede ser table o table.column.
condition - Cualquier clausula, SQL WHERE, New o Current, pueden aparecer en
lugar de una
variable de instancia siempre que una variable de instancia es admisible en SQL.
action - Cualquier clausula SQL, New o Current pueden aparecer en lugar de una
variable de instancia siempre que una variable de instancia sea admisible en SQL.

Descripcin

El sistema de reglas de PostgreSQL permite que una accin alternativa sea realizada en
updates, inserts o deletes en tablas o clases. Actualmente se utilizan reglas para
implementar vistas de tablas.

El significado de una regla es que cuando una instancia individual es accedida,


actualizada, insertada o borrada, existe una instancia actual (para consultas,
actualizaciones y borrados) y una nueva instancia (para actualizaciones y aadidos). Si el
event especificado en la clusula ON y la condition especificada en la clusula WHERE
son verdaderas para la instancia actual, la parte action de la regla es ejecutada. Antes, sin
embargo, los valores de los campos de la instancia actual y/o la nueva instancia son
sustituidos por current.attribute-name y new.attribute-name.

La parte action de la regla se ejecuta con el mismo identificador de comando y


transaccin que el comando de usuario que caus la activacin.

Notas

Es pertinente la precaucin con reglas de SQL. Si el mismo nombre de clase o


variable de instancia aparece en el event, la condition y la parte action de la regla, son
considerados todos diferentes tuplas. De forma ms precisa, new y current son las nicas
tuplas que son compartidas entre clusulas. Por ejemplo, las siguientes dos reglas tienen
la misma semntica.
ON UPDATE TO emp.salary WHERE emp.name = "Joe"
DO UPDATE emp ( ... ) WHERE ...

ON UPDATE TO emp-1.salary WHERE emp-2.name = "Joe"


DO UPDATE emp-3 ( ... ) WHERE ...

Cada regla puede tener la etiqueta opcional INSTEAD. Sin esta etiqueta, la action ser
realizada en adicin al comando de usuario cuando el event en la parte condition de la
regla aparezcan. Alternativamente, la parte action ser realizada en lugar del comando del
usuario. En este ltimo caso, la action puede ser la palabra clave NOTHING.

Cuando se elige entre los sistemas de reescritura y reglas de instancia para una
aplicacin particular de una regla, recurdese que en el sistema de reescritura, current se
refiere a la relacin y algunos calificadores mientras que en el sistema de instancias se
refiere a una instancia (tupla). Es muy importante notar que el sistema de reescritura
nunca detectar ni procesar reglas circulares.

Es necesario tener permiso de definicin de reglas en una clase para poder definir
una regla en l. Se debe utilizar el comando GRANT y REVOKE para modificar estos
permisos.

El objeto en una regla SQL no puede ser una referencia a un arreglo y no puede tener
parmetros.

Aparte del campo "oid", los atributos del sistema no pueden ser referenciados en ningn
lugar de la regla. Entre otras cosas esto significa que las funciones de instancias (por
ejemplo, foo(emp) donde emp es una clase) no pueden ser llamadas en ningn lugar
dentro de una regla.

El sistema almacena el texto de la regla y los planes de consulta como atributos de texto.
Esto implica que la creacin de reglas puede fallar si la regla ms sus varias internas
representaciones exceden algn valor que es del orden de una pgina.

Donde descargar

http://www.postgresql.org/download/windows

Ms informacin

http://www.ajpdsoft.com/modules.php?name=News&file=article&sid=489

Вам также может понравиться