Diana Ortega escribió:
> Cordial saludo
>
> Tengo una base de datos 8i sobre solaris, pero no
> enterprise. Dependiendo del usuario con que inicie
> sesion en la base de datos necesito ocultar algunos
> registros a ese usuario. La forma mas facil de hacerlo
> es creando un paquete que retornara esta restriccion y
> adicionando una politica en la base de datos que
> ejecutara ese paquete con DBMS_RLS.ADD_POLICY
> El problema es que tengo entendido que para 8i se
> necesita tener la version enterprise y por lo tanto
> esto no funciona en mi base de datos. Y como no tengo
> acceso al codigo fuente de la aplicacion, entonces
> estas restricciones no las puedo hacer a nivel de sw.
> Hay alguna manera de ocultar o simular este
> ocultamiento de registros dependiendo de cual usuario
> es el que inicia sesion en la bd sin usar las
> instrucciones del DBMS_RLS?
Dependiendo de la libertad que tengas de modificar el schema de tu sistema
podrías crear vistas y acceder a estas vistas, en lugar de a las verdaderas
tablas, en estas visats crear un where que te seccione la visión de los datos
según sea conveniente, obviamente que dependiendo de la complejidad del where
puede que sea necesario crear una función y devolver algún valor según
corresponda, pero esto puede traerte problemas con la performance.