Para mejorar la seguridad en una aplicaci贸n inform谩tica podemos utilizar vistas con la cl谩usula WITH CHECK OPTION. De esta forma, s贸lo podremos insertar los registros que cumplen con la condici贸n del WHERE. Combinando vistas y la funci贸n USERENV, que retorna informaci贸n de la sesi贸n y del usuario, podemos hacer cosas del tipo:
Tenemos 2 tablas: departamentos y empleados. Queremos que un empleado s贸lo pueda ver e insertar empleados de su mismo departamento. Ligamos ambas tablas por el c贸digo de departamento (coddep)
La vista ser铆a del tipo:
create or replace view v_emp as
select emp.*
from empleados emp
where emp.coddep in (
select dep.coddep
from departamento dep,
empleados emp2
where dep.coddep = emp2.coddep
and upper(emp2.codemp) = userenv(‘CLIENT_INFO’)
) with check option







Suscribirse a nuestro Twitter
Javier Jofre (12-May-2010)
Gracias a O'Reilly, podemos asistir v铆a online y de forma gratuita a algunos cursos sobre desarrollo en Java para Android. Pr贸ximamente (en unos d铆as) empieza el curso de creaci贸n de un cliente twitter. Espero que lo disfrut茅is.