[Lazarus-es] Creación de usuarios firebird
Antonio Evora
aevorar en gmail.com
Mar Sep 16 12:11:45 CEST 2014
Estimados colegas.
Hace un par de días (quizás alguno más) que ando liado intentando
integrar la gestión de usuarios de firebird, versión 2.5, desde una
aplicación lazarus (SQLDB). Después de muchas pruebas decidí implementar
tres disparadores en la tabla usuarios (la que manipulo desde lazarus).
Estos disparadores son:
- De inserción, en el cual creo el nuevo usuario con su contraseña, le
asigno el rol seleccionado para este y genero el nuevo id.
- De actualización, en el cual si el nombre de usuario cambio, le quito
los privilegios que tuviera y elimino el usuario, si cambio la
contraseña le asigno la nueva y si cambio el rol le quito el rol
anterior y le asigno el nuevo.
- De eliminación, quito los privilegios que tuviera y elimino el usuario.
Consideraciones:
- Para evitar conflictos, añado a los usuarios creados un prefijo.
- Todo lo referente a la gestión de usuarios lo ejecuto usando "execute
statement".
- En el script de creación de la BD (que se ejecuta como sysdba) creo
tres usuarios, lo cual hace perfectamente.
El problema que tengo es que cuando accedo a la aplicación con
cualquiera de los 3 usuarios creados solo puedo manipular aquel con el
que accedo. Según la documentación es lo normal para usuarios que no
tiene el rol rdb$admin, que no es el caso, ya que en el script le añado
ese rol.
Si queréis os envío el código de los disparadores y de los
procedimientos almacenados que orquestan lo arriba mencionado (ahora no
es posible ;-D).
¿Alguna idea?
More information about the Lazarus-es
mailing list