Está en la página 1de 11

BENEMRITA

UNIVERSIDAD AUTNOMA
DE PUEBLA
Facultad de Ciencias de la Computacin
Ingeniera en Tecnologas de la Informacin
Minera de Datos
Reporte:
1ra. Prctica de Laboratorio
Profesor:
Dr. Aguilar Rico Adolfo
Integrantes:
Aburto Guevara Betzait
Cardoso Jurez Jaime David
Francisco Snchez Dulce Maria
Osorio Corro Antonio de Jess
15/08/16

OBJETIVO

Hacer uso de la Consola de comando de Oracle PL/SQL, creando usuarios y otorgando


permisos respectivamente para tareas especficas (select, insert, update, revoke, grant)
sobre una tabla PL/SQL o los usuarios.
Crear un organigrama institucional para representar los cursos de una institucin, as
como almacenar datos de alumnos, profesores, y todo sobre los cursos.

ANTECEDENTES

Se ha realizado el manejo de datos a travs de un sistema gestor SQL server, con previos
conocimientos del lenguaje SQL. Ahora se requiere la previa instalacin de Oracle
Database 10g Express para realizar las pruebas correspondientes desde el navegador o
en este caso la consola.
SQL es un lenguaje de conjuntos muy poderoso, cuyo nico objetivo es manipular el
contenido de bases de datos relacionales. Si se ha de desarrollar aplicaciones basadas
en bases de datos Oracle, (o el cdigo de alguien que escribe en un nivel inferior de la
pila de la tecnologa) debe ejecutar sentencias SQL para recuperar datos desde o cambiar
datos en la base de datos. Sin embargo, SQL no se puede utilizar para implementar toda
la lgica de negocios y la funcionalidad que el usuario final necesita en nuestras
aplicaciones. Esto nos lleva a PL/SQL.
PL/SQL significa Procedural Language/Structured Query Language (una extensin de
programacin estructurada sobre SQL). PL/SQL ofrece un conjunto de instrucciones
clsicos de la programacin estructurada (instruccin condicional IF, loops o iteraciones,
asignaciones), organizado dentro de bloques (lo que se explica ms adelante), que
complementan y amplan el alcance de SQL.

DESARROLLO
-

PARTE 1

a) Crear dos usuarios u1 y u2, el primero con todos los privilegios y el segundo solo con el
privilegio de create session.
Objetivo: Hacer una de las tareas ms bsicas de un administrador de base de datos
(identificar usuarios).
Implementacin
No debemos olvidar que se debe tener muy en cuenta cada usuario que se conecta a la
base de datos.
Para ingresar con el perfil del Super Usuario, usamos la sentencia CONNECT SYSTEM y
usando la contrasea que se define por default (ht, hr o una personalizada).
Ingresar como system para crear los usuarios:

Para crear un usuario se usa la sentencia CREATE USER. Al crear la cuenta se debe
considerar como mnimo un nombre para asignar: username, y una contrasea para
autenticarse.
Oracle provee tres mtodos de autentificacin, en este caso usaremos AUTENTICACIN
MEDIANTE PASSWORD. Cuando nuestro usuario se conecte, se verificar que el
nombre de usuario y la contrasea sea correcta,si lo es se guardar encriptada en el data
dictionary.
Creando el Primer Usuario (U1):

Con la sentencia GRANT otorgamos, en este caso el permiso de DBA al usuario1, como
se pide en la prctica (usuario1 con todos los privilegios).

Creacin del Segundo Usuario (U2):

En este Usuario le concederemos el privilegio para poder iniciar sesin, es decir poder
conectarse a la base de datos. Usamos la sentencia CREATE SESSION

Usando la sentencia CONNECT U1, cambiamos al usuario 1 para crear una tabla,
con diferentes datos.
Crear tabla Alumno para usuario 1:

b) Otorgar los privilegios al usuario dos para permitirle consultar, insertar y actualizar
sobre la tabla creada.
Damos los permisos al u2 para que pueda select,insert, y update sobre la Tabla
Alumno del U1:

Verificamos que el usuario U2 pueda seleccionar, insertar y actualizar la tabla del


U1:

Revisamos si se agreg la fila por el u2 y si se actualizo el cambio de la fila 1:

c) Revocar el privilegio de crear un Alumno.

Comprobacin:

PARTE 2

Similar al ejercicio creamos algunas tablas que representan el funcionamiento de una


institucin, es decir lo que concierne a las inscripciones a los cursos de sus alumnos, as
como datos de contactos del personal (Profesores).
Crearemos un administrador general (Usuario Administrador)
Tres roles diferentes, correspondientes a los Alumnos, Profesores y Secretarias y para
cada rol sus usuarios respectivamente.
Creamos el Usuario Administrador:

Le damos permisos de DBA al usuario:

Tabla alumno:

Tabla Profesor:

Tabla Curso:

Tabla Inscripcin:

De la creacin de las tablas podemos destacar el manejo de las llaves primarias y


forneas que se asignan a cada tabla, lo que nos permite dar la estructura de una base de
datos para poder trabajar con estos, que en conjunto interactan de acuerdo a lo que se
requiera.
Roles
Un rol es un conjunto o grupo de privilegios que se pueden conceder a los usuarios, esto
permite ahorrar tiempo y esfuerzo, agrupar lgicamente los permisos de los usuarios.
Para crear un rol usamos la sentencia CREATE ROLE seguido del nombre.
Creacin de los roles Alumnos, Profesores y Secretara:

Despus de crear los roles, el siguiente paso consiste en otorgar permisos sobre
cada rol a algunos usuarios. Creamos 4 usuarios para poder despus asignarle a
cada 1 algn rol:

Una vez creados los usuarios,


Asignamos el rol de Alumnos a los usuarios Jesus y Betzait.
Despus concedemos privilegios a estos usuarios y damos el permiso de que el rol
Alumnos pueden editar el campo eMail y ver la tabla Alumno:

Ahora nos conectamos con algn usuario de Rol Alumnos para verificar si puede
ver la tabla Alumnos y actualizar el email de esta misma (ver datos de la Tabla
Alumno):

Actualizamos el eMail:

Como podemos ver el anterior eMail del Alumno Jesus era finn658@gmail.com y
ahora es finn123@gmail.com:

Para verificar de mejor manera intentamos insertar un Nuevo alumno desde nuestro
usuario Jess que tiene como Rol ser Alumno (nos damos cuenta que nos niega
ese permiso):

ROL PROFESORES Y SUS PERMISOS:


a) Le damos al usuario Jaime creado anteriormente el Rol de Profesor:

b) Asignamos los permisos de poder Modificar los datos de la tabla Profesores y


cambiar la calificacin de la Tabla Inscripcin:

Comprobacin:
-

Entramos como usuario Jaime que tiene el Rol de Profesor (vemos la Tabla
de Profesor)

Actualizamos algunos campos de la Tabla profesor:

Comprobamos si se hicieron los cambios correspondientes:

Ahora revisemos si puede actualizar la Calificacin de la tabla Inscripciones


(veamos la tabla):

Ahora actualicemos una calificacin de algn Alumno:

CONCLUSIONES

Durante el desarrollo de la prctica pudimos crear tablas, usuarios, y roles as como


otorgar y revocar privilegios a algunos usuarios sobre algunos objetos de las tablas.
Se identificaron los niveles en los que usuarios puede acceder a una base de datos por
muy pequea que parezca. Como buenos administradores aprendemos la importancia del
manejo de sesiones para poder tener un control total sobre los usuarios que se conectan
a nuestra base de datos, y a la vez restringiendo con la ayuda de la sentencias que se
usaron, como grant y revoke.
El que define los lmites para usuarios, grupos, roles, etc., es el administrador y esto
beneficia los recursos del sistema.
Como resultado de esta prctica, pudimos comenzar a investigar las bases del lenguaje
pl/sql. As como, ver las primeras diferencias entre Microsoft SQL y Oracle. Ya que es el
lenguaje de Base de Datos con la que usualmente estamos acostumbrados a trabajar.

REFERENCIAS

W3schools.com. (n.d.). SQL Tutorial. [online] Available at: http://www.w3schools.com/sql/


[Accessed 12 Aug. 2016].
Ora.u440.com. (n.d.). ORACLE - DDL. [online] Available at: https://ora.u440.com/ddl/
[Accessed 13 Aug. 2016].
Psoug.org.
(n.d.).
Oracle
Roles
and
Privileges.
[online]
http://psoug.org/reference/roles.html [Accessed 14 Aug. 2016].

Available

at:

Feuerstein, S. (2012). Artculos: SQL & PL/SQL - Construyendo con Bloques en PL/SQL
(Parte
I).
[online]
Oracle.com.
Available
at:
http://www.oracle.com/technetwork/es/articles/sql/construyendo-con-bloques-parte-11549135-esa.html [Accessed 15 Aug. 2016].

También podría gustarte