Documentos de Académico
Documentos de Profesional
Documentos de Cultura
DOCENTE:
Ing. Alvaro Mejia
--CREACION DE ROLES
--------------------------------
--ROL BODEGERO
CREATE ROLE ROL_BODEGERO;
---------------------------------
--ROL CAJERO
CREATE ROLE ROL_CAJERO;
-------------------------------------------
--PERMISOS DE EJECUCION:
GRANT EXECUTE ON USR_FACTURACION.Q_FUN_PROC TO ROL_ADMIN_FACTURACION;
------------------------------------------------------------------------
-------
--CREATE SESSION
GRANT CREATE SESSION TO USR_FCT_DAMAY WITH ADMIN OPTION
GRANT CREATE SESSION TO USR_WCAMAS WITH ADMIN OPTION
GRANT CREATE SESSION TO USR_EHUINAIZACA WITH ADMIN OPTION
--REVOKAR PERMISOS
REVOKE rol_cajero from USR_WCAMAS;
REVOKE ROL_ADMIN_FACTURACION FROM USR_FCT_DAMAY;
----------------------------
--PERMISOS PARA LA TABLA FCT_UNIDAD_PRODUCTOS (ejecutar trigers)
GRANT SELECT,INSERT,UPDATE ON SEGURIDAD.TABLA_AUDITORIA TO
USR_FACTURACION;
GRANT SELECT,INSERT,UPDATE ON SEGURIDAD.VALORES_TABLA_AUDITORIA TO
USR_FACTURACION;
GRANT SELECT,INSERT,UPDATE ON SEGURIDAD.CONTROL_ACTUALIZA_DESCRIPCION
TO USR_FACTURACION;
Ejecucion de los triggers:
Trigger de Actualización:
Funcionamiento:
COMMIT;
Este Trigger es para que ningún empleado gane un salario menor al sueldo
mínimo en caso de que se inserte o actualiza un valor menor a 375 la
excepción saldrá:
BEGIN
IF UPDATING THEN
if :new.SALA_MONTO < 375 THEN
raise_application_error(-20000, 'EL EMPLEADO NO PUEDE GANAR
MENOS DEL SUELDO BASICO !!!');
end if;
end if;
END;
Funcionamiento:
IF UPDATING THEN
if :new.empl_edad < 18 THEN
raise_application_error(-20000, 'EL EMPLEADO NO PUEDE SER
MENOR DE EDAD !!!');
end if;
end if;
End;
Funcionamiento:
--TRIGGER
CREATE OR REPLACE TRIGGER Audit_Productos
AFTER INSERT OR UPDATE OR DELETE ON FCT_UNIDADES
FOR EACH ROW
BEGIN
IF INSERTING THEN
INSERT INTO SEGURIDAD.TABLA_AUDITORIA
VALUES (Audit_seq. NEXTVAL, USER, SYSDATE,
'FCT_UNIDADES', 'INSERT',:new.UNI_ID);
ELSIF DELETING THEN
INSERT INTO SEGURIDAD.TABLA_AUDITORIA
VALUES (Audit_seq. NEXTVAL, USER, SYSDATE,
'FCT_UNIDADES', 'DELETE',:old.UNI_ID);
ELSE
INSERT INTO SEGURIDAD.TABLA_AUDITORIA
VALUES (audit_seq. NEXTVAL, USER, SYSDATE,
'FCT_UNIDADES', 'UPDATE',:old.UNI_ID);
Funcionamiento:
Tablas de Auditoria:
CONCLUSIONES: cada estudiante cuenta con conocimientos necesarios y
suficientes para poder administrar correctamente una base de datos
haciendo que el sistema sea más seguro de usar para todos los usuarios
del sistema.