Está en la página 1de 4

1) Crea un usuario de base de datos que tenga las funciones de administrador.

R// create user ALAN identified by ALAN;


grant dba to ALAN;
Grant select_catalog_role to ALAN;
grant connect to ALAN;

2) Conéctate con el nombre de usuario creado.


Oracle ora10Db10g_home1 desarrollo de aplicaciones  SQL plus e
introducimos el usuario

3) Crea tres tablas en el propio esquema.

Create table tabla1

2 (n NUMBER(10));

CREATE table tabla2

2 (n NUMBER(10);

CREATE table tabla3

2 (n NUMBER(10);

4) Crea un tablespace COMPRAS:

Create tablespace COMPRAS

datafile

'mddata01.dbf' SIZE 1000M,

'mddata02.dbf' SIZE 1000M

AUTOEXTEND ON NEXT 5M MAXSIZE 200000M;

Create tablespace COMPRAS

Datafile

'mddata01.dbf' SIZE 1000M,

'mddata02.dbf' SIZE 1000M

AUTOEXTEND ON NEXT 5M MAXSIZE 200000M;


5) Crea 5 usuarios nuevos asignándoles el tablespace COMPRAS y cuota 2m.
(USU1, USU2, USU3, USU4, USU5).
Create user usu1 IDENTIFIED BY usu1 DEFAULT TABLESPACE COMPRAS
QUOTA 2M ON COMPRAS;

Create user usu1 IDENTIFIED BY usu2 DEFAULT TABLESPACE COMPRAS


QUOTA 2M ON COMPRAS;

Create user usu1 IDENTIFIED BY usu3 DEFAULT TABLESPACE COMPRAS


QUOTA 2M ON COMPRAS;

Create user usu1 IDENTIFIED BY usu4 DEFAULT TABLESPACE COMPRAS


QUOTA 2M ON COMPRAS;

Create user usu1 IDENTIFIED BY usu5 DEFAULT TABLESPACE COMPRAS


QUOTA 2M ON COMPRAS;

6) Da permiso a uno de los usuarios (USU1) sólo para que pueda conectarse a
la base de datos. Prueba que puede conectarse pero que no puede ver tablas
(describe admin1.tabla1;).

GRANT SELECT_CATALOG_ROLE TO usu1;


GRANT CONNECT TO usu1;

7) Crea un rol que permita conectase a la base de datos y hacer SELECT


sobre algunas tablas.

CREATE ROLE rol_usu;


GRANT CONNECT TO rol_usu;
GRANT SELECT_CATALOG_ROLE TO rol_usu;

GRANT SELECT ON ALAN.TABLA1 TO rol_usu;


GRANT SELECT ON ALAN.TABLA2 TO rol_usu;

8) Concede el rol creado a dos de los usuarios creados anteriormente (USU2 Y


USU3). Prueba que puede ver tablas creadas por otros ( admin1.tabla1,
admin1.tabla2, …).

GRANT rol_usu TO usu2;


GRANT rol_usu TO usu3;

Insertarmos algunos datos para mirar

INSERT INTO alan.tabla1 values (5);


INSERT INTO alan.tabla1 values (8);

NOTA:si hacemos cambios en la base de datos que no sea administrativo pondremos el


commando commit;
9) Concede al usuario USU4 privilegios sobre algunas tablas con la opción de
poder concedérselos a otros usuarios. Prueba los siguientes: meter registros,
ver registros. Entra como USU2 y comprueba que puede ver datos pero no
meterlos.

GRANT CONNECT TO USU4;


GRANT SELECT_CATALOG_ROLE TO USU4;
GRANT SELECT ON ALAN.TABLA2 TO USU4 WITH GRANT OPTION;
GRANT DELET ON ALAN.TABLA2 TO USU4 WITH GRANT OPTION;
GRANT INSERT ON ALAN.TABLA2 TO USU4 WITH GRANT OPTION;

GRANT SELECT ON ALAN.TABLA3 TO USU4 WITH GRANT OPTION;


GRANT DELET ON ALAN.TABLA3 TO USU4 WITH GRANT OPTION;
GRANT INSERT ON ALAN.TABLA3 TO USU4 WITH GRANT OPTION;

10) Concede al usuario USU5 cuatro privilegios de sistema, dos de ellos, con la
opción de poder concedérselos a otros usuarios.

GRANT CREATE ANY TABLE TO USU5;


GRANT CREATE USER TO USU5;
GRANT ALTER TABLESPACE TO USU5 WITH ADMIN OPTION;
GRANT ALTER USER TO USU5 WITH ADMIN OPTION;

11) Concede a todos los usuarios de la base de datos privilegios para que
puedan modificar ciertas columnas de algunas tablas. Prueba que puede
alterar las tablas del ejercicio 9 y tambien chequea mediante el Enterprise
Manager los privilegios otorgados.

GRANT update(n) on alan.tabla1 to public;

12) Quita a los usuarios USU3 y USU4 todos los privilegios que tenían
asignados.

Revoke all on alan.tabla2 from usu4;

Revoke all on alan.tabla3 from usu4;

revoke rol_usu from usu3;

13) Haz que USU5 sólo pueda conectarse en dos sesiones concurrentes a la
vez.

Create profile perfilusu5 limit sessions_per_user 2;


Alter user usu5 profile perfilusu5;
14) Limita el tiempo de conexión a la base de datos a 3 minutos a los usuarios
USU2 Y USU3

Créate profile limitetiempo limit connect_time 3;


Alter user usu2 profile limitetiempo;
Alter user usu3 profile limitetiempo;

También podría gustarte