Documentos de Académico
Documentos de Profesional
Documentos de Cultura
----------------------------------------
-- 2. LISTA DE USUARIOS
----------------------------------------
SELECT * FROM DBA_USERS;
----------------------------------------
-- 3. CAMBIO DE PASWORD Y BLOQUEO
----------------------------------------
ALTER USER USER100 IDENTIFIED BY 321;
--------------------------------------------------------------
-- 3. ASIGNACION DE PRIVILEGIOS DE SISTEMAS
--------------------------------------------------------------
GRANT CREATE SESSION TO USER100; -- Proceda a conectarse
--------------------------------------------------------------
-- 4. ASIGNACION DE PRIVILEGIOS DE OBJETOS
--------------------------------------------------------------
GRANT SELECT ON SCOTT.EMP TO USER100;
--------------------------------------------------------------
-- 5. DENEGAR PRIVILEGIOS
--------------------------------------------------------------
REVOKE SELECT ON SCOTT.EMP FROM USER100;
--------------------------------------------------------------
-- 6. ROLES
--------------------------------------------------------------
CREATE ROLE JEFATURA NOT IDENTIFIED;
--------------------------------------------------------------
-- 7. ASIGNANDO PRIVILEGIOS A LOS ROLES
--------------------------------------------------------------
GRANT SELECT , INSERT , UPDATE ON SCOTT.DEPT TO JEFATURA;
----------------------------------------------------
-- 2. ACTIVAR LA AUDITORIA
----------------------------------------------------
----------------------------------------------------
-- 3. CONSULTAR LA TABLA QUE CONTIENE LAS PISTAS DE AUDITORIA
----------------------------------------------------
SELECT * FROM SYS.AUD$;
----------------------------------------------------
-- 4. BORRAR LAS PISTAS DE AUDITORIAS
----------------------------------------------------
DELETE FROM SYS.AUD$;
-------------------------------------
--5. AUDITORIA DE SENTENCIAS
-------------------------------------
-- Vista que registra las reglas de auditoria de sentencias
-- ( dba_stmt_audit_opts )
SELECT SUBSTR( USER_NAME , 1 , 10 ) ,
SUBSTR( AUDIT_OPTION , 1 , 20 ) ,
SUBSTR( SUCCESS , 1 , 10 ) ,
SUBSTR( FAILURE, 1 , 10 )
FROM DBA_STMT_AUDIT_OPTS
ORDER BY 1;
--------------------------------------------------------------------
-- 6. CREAR EL USUARIO USER20 Y ASIGNAR A ESTE USUARIO EL ROL DE DBA
--------------------------------------------------------------------
CREATE USER USER20 IDENTIFIED BY 123
GRANT DBA TO USER20;
--------------------------------------------------------------------
-- 7. AUDITAR LA SENTENCIA SELECT TABLE E INSERT TABLE DEL USUARIO
USER20.
--------------------------------------------------------------------
AUDIT SELECT TABLE , INSERT TABLE BY USER20 BY ACCESS;
--------------------------------------------------------------------
-- 8. CONSULTE CUALES SON LAS SENTENCIAS AUDITADAS DEL USUARIO USER20
--------------------------------------------------------------------
SELECT SUBSTR( USER_NAME , 1 , 10 ) ,
SUBSTR( AUDIT_OPTION , 1 , 20 ) ,
SUBSTR( SUCCESS , 1 , 10 ) ,
SUBSTR( FAILURE, 1 , 10 )
FROM DBA_STMT_AUDIT_OPTS
ORDER BY 1;
--------------------------------------------------------------------
-- 9. CONCTESE COMO USER20 Y CONSULTE LA TABLA SCOTT.DEPT Y
-- COMPRUEBE QUE DICHA ACCIN EST REGISTRADA EN DBA_AUDIT_TRAIL.
--------------------------------------------------------------------
SELECT SUBSTR(OS_USERNAME,1,20) USUARIO_SO,
SUBSTR(USERNAME,1,12) USUARIO,
TO_CHAR(TIMESTAMP,'DD-MM-YYY HH24:MI:SS') TIEMPO_CONEXION,
SUBSTR(ACTION_NAME,1,10) ACCION,
SUBSTR( OBJ_NAME , 1, 15 ) OBJETO
FROM DBA_AUDIT_TRAIL
WHERE USERNAME = 'USER20' AND OBJ_NAME IN ( 'DEPT' , 'BONUS')
ORDER BY USERNAME,TIMESTAMP,LOGOFF_TIME;
--------------------------------------------------------------------
-- 10. INSERTE 2 REGISTROS EN LA TABLA SCOTT.DEPT Y COMPRUEBE QUE
-- DICHA ACCIN EST REGISTRADA EN DBA_AUDIT_TRAIL.
--------------------------------------------------------------------
INSERT INTO SCOTT.DEPT VALUES ( 50 , 'ALMACENERO' , 'MIAMI');
INSERT INTO SCOTT.DEPT VALUES ( 55 , 'VENTAS' , 'MADRID');
Consulta similar a la anterior
--------------------------------------------------------------------
-- 11. DESACTIVAR LA AUDITORIA SELECT TABLE DEL USUARIO USER20.
--------------------------------------------------------------------
NOAUDIT SELECT TABLE BY USER20 ;
Comprobando:
SELECT SUBSTR( USER_NAME , 1 , 10 ) ,
SUBSTR( AUDIT_OPTION , 1 , 20 ) ,
SUBSTR( SUCCESS , 1 , 10 ) ,
SUBSTR( FAILURE, 1 , 10 )
FROM DBA_STMT_AUDIT_OPTS
ORDER BY 1;
-----------------------------------
-- 12. AUDITORIA DE OBJETOS
-----------------------------------
-- Consultar las auditoras de objetos activas. (DBA_OBJ_AUDIT_OPTS )
SELECT *
FROM DBA_OBJ_AUDIT_OPTS ;
-----------------------------------
-- 13. ACTIVAR LA AUDITORA RELACIONADAS CON LAS ACCIONES DE CONSULTAS
-- ( SELECT , INSERT Y UPDATE ) SOBRE EL OBJETO SCOTT.DEPT
-----------------------------------
AUDIT SELECT, INSERT, DELETE, UPDATE ON SCOTT.DEPT;
--------------------------------------------------------
-- 14. CONSULTE LA OBJETOS AUDITADOS (DBA_OBJ_AUDIT_OPTS )
--------------------------------------------------------
SELECT *
FROM DBA_OBJ_AUDIT_OPTS
--------------------------------------------------------
-- 15. CONCTESE COMO USER20 Y CONSULTE LA TABLA SCOTT.DEPT,INSERTE
-- DATOS. VERFIQUE EL REGISTRO DE AUDITORA.
--------------------------------------------------------
-- Comprobando
SELECT SUBSTR(OS_USERNAME,1,10) USUARIO_SO,
SUBSTR(USERNAME,1,12) USUARIO,
TO_CHAR(TIMESTAMP,'DD-MM-YYY HH24:MI:SS') TIEMPO_CONEXION,
SUBSTR(OWNER,1,10) PROPIE,
SUBSTR(OBJ_NAME,1,15) OBJETO,
SUBSTR(ACTION_NAME,1,35) ACCION
FROM DBA_AUDIT_OBJECT
WHERE USERNAME='USER20' AND OBJ_NAME LIKE '%DEPT%'
ORDER BY TIMESTAMP DESC
--------------------------------------------------------
-- 16. DESACTIVAR TODAS LAS OPCIONES DE AUDITORA DE OBJETOS QUE
-- EXISTEN POR DEFECTO.
--------------------------------------------------------
SQL> NOAUDIT ALL ON DEFAULT;
-----------------------------------------------
-- 17. AUDITORIA DE GRANO FINO
-----------------------------------------------
BEGIN
DBMS_FGA.ADD_POLICY(
OBJECT_SCHEMA => 'SCOTT',
OBJECT_NAME => 'DEPT',
POLICY_NAME => 'CHK_HR_EMP',
AUDIT_CONDITION => 'DNAME= ''SALES'' ',
AUDIT_COLUMN => 'DNAME',
STATEMENT_TYPES => 'INSERT,UPDATE,DELETE,SELECT');
END;
-----------------------------------------------
-- 18. INSERTAR UN REGISTRO DE DEPARTAMENTO PARA SALES, COMPRUEBE
-- LA AUDITORIA
----------------------------------------------
INSERT INTO SCOTT.DEPT VALUES ( 12 , 'SALES' , 'LIMA');
-----------------------------------------------
-- 19. ELIMINAR LA AUDITORIA ANTERIOR
----------------------------------------------
BEGIN
DBMS_FGA.DROP_POLICY( object_schema =>'SCOTT' ,
object_name => 'dept',
policy_name =>'chk_hr_emp');
END;