PDA

Ver la Versión Completa : roles, sesiones y usuarios de oracle 7.3 y delphi 7


rcrmilo
18-05-2004, 23:08:24
Hola todos...

Mi problema es el siguiente...

He desarrollado un sistema de gestion de mantenimiento de equipos en delphi 7 con una base de datos oracle. en entorno cliente servidor. ahora bien se me pidio realizar lo siguiente. de acuerdo a la jerarquia de usuarios y sus respectivos roles, hacer cierto tipo de consultas especializadas, como por ejemplo los jefes de departamento pueden ver cual ha sido el gasto de sus subalternos y asi sucesivamente hasta llegar al gerente, me gustaria primero ver desplegar en mi pantalla principal el nombre de usuario y tambien saber que rol es el que tiene, no se como hacer esto. y de acuerdo a esto habilitar ciertas opciones en sus menus, esta tarea es muy facil en Oracle developer, pero ahora queremos trabajar en windows, por lo que me complico un poco...

Gracias de antemano y espero me podais ayudar
:)

jachguate
18-05-2004, 23:46:23
Podes obtener el usuario de la base de datos asi:


Select user
from dual;


Los roles asociados al usuario, y activos en la sesion, los podes obtener consultando la vista user_enabled_roles (la digo de memoria, pero si no es, algo asi se llama... :eek: ).

Hasta luego.

;)

santana
19-05-2004, 00:15:05
Hola.




Los roles asociados al usuario, y activos en la sesion, los podes obtener consultando la vista user_enabled_roles (la digo de memoria, pero si no es, algo asi se llama... :eek: ).

Tal vez mi memoria esté peor que la tuya, pero me parece que es así ;)


select *
from SESSION_ROLES;

Saludos :D

jachguate
19-05-2004, 00:44:01
Pues tenes suerte que mi servidor de Oracle está abajo por algunos problemas técnicos... dejaremos que sea rcrmilo quien lo confirme...

Hasta luego.

;)

rcrmilo
19-05-2004, 15:25:12
Efectivamente hay que hacer lo ultimo.

muchas gracias por su ayuda...., pero me pregunto si pudeo administrar el ingreso de usuarios con sus respectibos roles mediante algun componente, puede ser el tsession....:o

jachguate
19-05-2004, 19:44:32
que significa "administrar el ingreso de usuarios con sus respectivos roles" ???

:confused:

rcrmilo
31-05-2004, 21:50:58
Cuando administras una base de datos cliente servidor generalmente se crean cuentas de ingreso para cada uno de los usuarios, no obstante es lo mismo que entre el jefe de ventas que el gerente de operaciones, en todo caso se crean roles para cada uno de ellos con diversos tips, por ejemplo un usuario de baja jerarquia no puede ver cuanto gana el gerente o un distribuidor solo puede ver la lista de clientes, cada usuario pertenece a un rol, lo que le permite tener acceso a diferentes tablas, vistas y procedimientos.

rcrmilo
31-05-2004, 21:57:55
pero quisiera saber como se obiene el nombre del rol en cuestion???:confused:

jachguate
31-05-2004, 22:05:20
Lo ha respondido Santana antes, no?

rcrmilo
03-06-2004, 16:41:45
select * from session_roles;

devuelve los persmisos activados al usuario conectado, pero no muestra el nombre del rol en cuestion.

santana
03-06-2004, 16:55:10
¡¡¡ Hola !!! :)

No puedo asegurarte lo que contienen estas vistas porque no tengo Oracle en el trabajo y ahora mismo no lo recuerdo bien, pero investiga a ver las siguientes:

DBA_ROLES
DBA_ROLES_PRIVS

A ver si ahora damos en el clavo ;)

Saludos.

santana
03-06-2004, 18:20:19
Hola nuevamente, rcrmilo.

En un momentillo que he podido escaquearme me he dado una vuelta por un manual que tenía a mano....

¿Seguro que la vista session_roles no te da la información que estás buscando?¿Entonces que devuelve esta sentencia?

select role from session_roles;

No sé, ya comentarás algo.... :confused:

jachguate
03-06-2004, 19:22:23
¿Entonces que devuelve esta sentencia?
select role from session_roles;


Pues al menos en oracle 8i... lo mismo que

select * from session_roles;

:D :D

Pues es la única columna que tiene la vista :eek:

Hasta luego.

;)