Está en la página 1de 3

Conceptos Avanzados de Bases de datos Relacionales

Dra. Martha Eliana Mendoza B.

RECOMENDACIONES
TALLER3: PROYECTO DE CLASE

Manejo de roles y usuarios sobre los objetos de la base de datos.


1. Cuando SE PUEDE manejar los privilegios sobre los objetos de la base de datos que
brinda el motor de bases de datos. Se puede licenciar por usuario conectado:

o Crear el esquema de usuario en el que se crea la base de datos.


CREATE USER Academico IDENTIFIED BY Academico20;

o Otorgar los permisos al usuario creado.


GRANT Create Session To Academico;
GRANT Create Table, Create View, Create Sequence To Academico;
GRANT Create Trigger, Create Procedure, To Academico;

o Ejecutar el script de creación de la base de datos de Academico, que tiene una


tabla Notas.

o Crear los usuarios (esquemas de usuario) que necesiten acceder a los objetos de
la base de datos.
CREATE USER lrincon IDENTIFIED BY lrincon1; (Profesora Lina Rincón)
GRANT Create Session To lrincon;

CREATE USER pduran IDENTIFIED BY pduran1; (Profesor Pedro Durán)


GRANT Create Session To pduran;

CREATE USER rmorales IDENTIFIED BY rmorales1; (Administrador Raúl Morales)


GRANT Create Session To rmorales;

CREATE USER fsolarte IDENTIFIED BY fsolarte1; (Administrador Francisco


Solarte)
GRANT Create Session To fsolarte;

o Crear los roles que agrupen privilegios de los usuarios sobre los objetos de la base
de datos (ej: estudiantes, profesores, etc.)
CREATE ROL Administradores;
GRANT Insert ON Academico:Notas TO Administradores;
GRANT Delete ON Academico:Notas TO Administradores;

CREATE ROL Profesores;


GRANT Select ON Academico:Notas TO Profesores;
GRANT Update(Not_NotaFinal) ON Academico:Notas TO Profesores;

o Asignar el rol a los usuarios de este grupo (se heredan los privilegios del rol).
GRANT Profesores TO lrincon, pduran;
GRANT Administradores TO rmorales, fsolarte;

Facultad de Ing. Electrónica y Telecomunicaciones 1


Ingeniería de Sistemas
Conceptos Avanzados de Bases de datos Relacionales
Dra. Martha Eliana Mendoza B.

2. Cuando NO SE puede manejar los privilegios sobre los objetos de la base de datos
que brinda el motor de bases de datos. Ejemplo: cuando se tiene licenciamiento del
motor de bases de datos por usuarios concurrentes (se tienen demasiados usuarios y
no se puede licenciar por usuario conectado):
o Crear el esquema de usuario en el que se crea la base de datos.
CREATE USER Academico IDENTIFIED BY Academico20;

o Otorgar los permisos al usuario creado.


GRANT Create Session To Academico;
GRANT Create Table, Create View, Create Sequence To Academico;
GRANT Create Trigger, Create Procedure, To Academico;

o Ejecutar el script de creación de la base de datos de Academico.

o Crear en el esquema de usuario Academico una tabla Logins para almacenar los
login, claves de los usuarios (encriptadas) que acceden a la base de datos y grupo
al que pertenecen los usuarios.

Grupo Login Clave


Profesores lrincon lrincon1
Profesores pduran pduran1
Administradores rmorales rmorales1
Administradores fsolarte fsolarte1

o Crear en el esquema de usuario Academico un usuario Entrar, que solo tenga


permisos de SELECT sobre la tabla Logins.

CREATE USER Entrar IDENTIFIED BY Entrar1;


GRANT Create Session To Entrar;
GRANT Select ON Academico:Entrar TO Entrar;

o Crear un usuario en el motor que agrupen privilegios de los usuarios (ej:


estudiantes, profesores, etc.).

CREATE USER Profesores IDENTIFIED BY Profesores1;


GRANT Create Session To Profesores;

CREATE USER Administradores IDENTIFIED BY Administradores1;


GRANT Create Session To Administradores;

o Asignar a estos usuarios los privilegios de los usuarios sobre los objetos de la
base de datos.

GRANT Insert ON Academico:Notas TO Administradores;


GRANT Delete ON Academico:Notas TO Administradores;

GRANT Select ON Academico:Notas TO Profesores;


GRANT Update(Not_NotaFinal) ON Academico:Notas TO Profesores;

Facultad de Ing. Electrónica y Telecomunicaciones 2


Ingeniería de Sistemas
Conceptos Avanzados de Bases de datos Relacionales
Dra. Martha Eliana Mendoza B.

o Un usuario se logea por el usuario Entrar para consultar la tabla de logins y saber
a qué grupo de usuario pertenece (Eje. Profesores) y conectarse al motor con ese
usuario y acceder a la base de datos (Academico). De esta forma, el motor sigue
teniendo el control de los privilegios. Por ejemplo: se conecta el usuario lrincon,
como es del grupo Profesores, ahora se conecta con este usuario.

o Para llevar una bitácora de la actividad de los usuarios se debe almacenar el login
de la tabla y no el usuario con el que se realiza primero la conexión al motor de la
base de datos.

Facultad de Ing. Electrónica y Telecomunicaciones 3


Ingeniería de Sistemas

También podría gustarte