Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Firebird e Interbase (https://www.clubdelphi.com/foros/forumdisplay.php?f=19)
-   -   Lista de Roles de un Usuario (https://www.clubdelphi.com/foros/showthread.php?t=86712)

Irwin 20-09-2014 03:00:19

Lista de Roles de un Usuario
 
Saludos amigos,

Estoy haciendo un form para el Login de usuarios de mi aplicacion y quiero autenticarlos con los usuarios que he creado en Firebird 2.5

Tengo por ejemplo el usuario ROBERT cuyo ROLE es R_VENDEDOR

Tengo en el form dos TEdit para Nombre y Contraseña y tengo un DBComboBox para mostrar los ROLES que pertenecen a ese usuario.

El asunto es que no se como traerme los ROLES del usuario ROBERT (por ejemplo.)

Soy nuevo en FireBird.

Gracias a todos!

ecfisa 20-09-2014 06:28:12

Hola Irwin.

Revisa este enlace: How to get a list of roles granted to a user?

Una variación del código del enlace:
Código SQL [-]
SELECT RDB$USER AS USER_NAME,
       RDB$GRANTOR AS GRANTOR_NAME,
       (CASE RDB$PRIVILEGE
        WHEN 'S' THEN 'SELECT'
        WHEN 'U' THEN 'UPDATE'
        WHEN 'D' THEN 'DELETE'
        WHEN 'I' THEN 'INSERT'
        WHEN 'R' THEN 'REFERENCE'
        WHEN 'X' THEN 'EXECUTE' END) AS PRIVILEGE,
        RDB$GRANT_OPTION AS GRANT_OPTION,
        RDB$RELATION_NAME AS TABLE_NAME,
        RDB$FIELD_NAME AS FIELD_NAME,
        RDB$USER_TYPE AS USER_TYPE,
        RDB$OBJECT_TYPE AS OBJECT_TYPE
FROM RDB$USER_PRIVILEGES
WHERE RDB$USER = :USER_NAME /* parámetro nombre del usuario */
ORDER BY RDB$USER, RDB$RELATION_NAME

Saludos :)

Irwin 20-09-2014 18:33:24

Gracias ecfisa,

Me sirvió de mucho tu Query.

¿Cómo podría familiarizarme con las tablas del sistema?, es decir, donde consigo algun manual que indique sus tablas y sus usos?

Saludos!

ecfisa 20-09-2014 20:05:49

Hola Irwin.

Vas a encontrar mucho material buscando por "Firebird metadata" en tu navegador.

Y si tu presupuesto lo permite, te recomiendo hacerte de este libro:
The Firebird Book: A Reference for Database Developers - Helen Borie
(ISBN 10: 1590592794 / ISBN 13: 9781590592793)

Saludos :)


La franja horaria es GMT +2. Ahora son las 08:18:13.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi