Usuarios para aplicación Oracle

zeropatatero
29 de Septiembre del 2005
Saludos a todos, y gracias anticipadas por vuestra ayuda.
He programado (PL/SQL) una aplicación web sobre una base de datos Oracle, con varios perfiles de usuario.
Hasta ahora he implementado el aspecto de la seguridad mediante cookies, así que la aplicación mantiene una tabla con los diferentes usuarios, sus passwords y su perfil de usuario.
Lo que pretendo ahora es limitar el acceso a vistas del sistema mediante usuarios y roles, es decir, hacer corresponder mis perfiles de la aplicación con roles Oracle y restringir así el acceso.
La idea es que cuando alguien haga login en la aplicación se le asigne el rol correspondiente.

El problema es que no sé cómo hacer esto, ni sé si es necesario crear un usuario por cada cliente que haga login en la aplicación, o en cambio tener creados usuarios permanentes que accedan a las vistas. En fin, no sé cómo enfocar el asunto.

¿Alguien sabe cómo podría hacerlo? Espero vuestras respuestas.

Nicolas Jaula
29 de Septiembre del 2005
Se deben crear los roles de la Base de Datos asi:

Rol para trabajar en cartera
ver_cartera a este rol se le asignan privilegios de select sobre las vistas que tengan que ver con cartera.
Creas otro rol para inventarios
Creas otro rol para facturación.

Cuanda tengas tus roles listos.
Entonces Creas un usuario que denominas ejemplo:
user_cartera
user_inventario
user_facturacion

Y acada usuario le asignas el rol adecuado
a user_cartera le asignas el rol ver_cartera etc.

Recuerda que las vistas no deben tener sinonimo publico pues cualquier usuario podría ver todo.

Si tienes un usuario que requiera de dos o mas perfiles

Crearias un usuario mixto_car_fac
y le asiganrias roles de ver_cartera y ver_facturacion

A los roles tambien les puedes asignar permisos sobre las tablas no lo olvides.