FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
||||
|
||||
Nuevos Usuarios en Firebird
Hola amigos del foro, actualmente estoy desarrollando una aplicación y me gustaría saber cómo puedo crear un usuario por código desde delphi y asignarle un rol, de ante mano muchas gracias por todos sus aportes.
Saludos. |
#2
|
|||
|
|||
Crear el usuario lo hago conectándome a la base de datos security.fdb y usando una sentencia como esta:
Hay que encriptar la password usando UnixCrypt:
Espero que te sirva. |
#3
|
||||
|
||||
Hola Nasca, gracias por tu aporte, me funcionó perfectamente, ahora me gustarìa saber còmo le asigno un rol a usuario y de paso còmo hago la consulta que me muestre los roles que tiene una base de datos...
Gracias nuevamente por tu aporte Nasca. |
#4
|
|||
|
|||
Cita:
sqldPermisos.CommandText := 'GRANT '+rol+' TO '+usuario; Como ves también lo hago mediante ExecSQL() Con respecto a la consulta:
Espero que te sirva, yo tengo conectado el dataset de los roles al de los usuarios como un maestro-detalle y así puedo ir viendo los roles de cada usuario. |
#5
|
||||
|
||||
Muy buen aporte. Muy útil.
Saludos y gracias !!!! |
#6
|
||||
|
||||
Hola nuevamente, aunque dije que me había funcionado, lo hice en una base de datos firebird 1.5, pero no me he podido conectar a security2.fdb en firebird 2.1, si aquí se hace de otro modo... te gradecería muchísimo que me no indicaras.
De ante mano muchas gracias... |
#7
|
|||
|
|||
Lo siento no lo he probado, mira la estructura de tablas por si cambia algún campo.
|
#8
|
||||
|
||||
Hola.
Lo de conectarse directamente a la bd de seguridad de Firebird, sólo es válido para versiones 1.x, a partir de la version 2.0 esto ya no es posible. Para dar de alta un usuario en Firebird 2.x, debes usar la herramienta gsec: gsec.exe -USER SYSDBA -PASSWORD masterkey -add <nombre_usuario> -pw <Clave_usuario> Para modificar un usuario: gsec.exe -USER SYSDBA -PASSWORD masterkey -modify <nombre_usuario> -pw <Clave_usuario> Para borrar un usuario: gsec.exe -USER SYSDBA -PASSWORD masterkey -delete <nombre_usuario>
__________________
Progress Openedge https://abevoelker.com/progress_open...dered_harmful/ Delphi forever... |
#9
|
||||
|
||||
Hola dfcon_1 te agradezco la información, pero no sé como ejecutar los parámetros, lo escribí como me mostrarte en tu post y me dio esto:
GSEC> user SYSDBA - PASSWORD masterkey - add gustavo - pw lucenys; invalid switch specified error in switch specifications invalid switch specified in interactive mode GSEC> me gustaría que me mostraras la forma de crear el nuevo usuario Gustavo Cruz |
#10
|
||||
|
||||
Hola Gustavo, te lo puse para que lo ejecutaras desde la linea de comandos, pero desde delphi, yo hago esto:
// Con esta funcion, averigüo la ruta donde está el gsec.exe // mirando en el registro de windows las distintas claves, según el motor y // version del mismo // este procedimiento ejecuta un programa externo
__________________
Progress Openedge https://abevoelker.com/progress_open...dered_harmful/ Delphi forever... |
#11
|
||||
|
||||
Hola defcon1_es, tu sabras disculpar mi torpeza pero resulta que aún no logro dar con el asunto...
No sé para qué utilizas la función GetIBServerDataBase? y tampoco sé cuál es el programa externo que ejecutas y para qué lo haces? en cuanto a la sentencia para dar de alta al nuevo usuario, es error que me mostraba al principio era por separar los guiones, lo hice sin separar y me mostró este resultado: "invalid switch specified in interactive mode" la línea la escribí así: "USER SYSDBA -PASSWORD masterkey -add gustavo -pw lucenys" Gracias por tu ayuda que es sumamente valiosa |
#12
|
||||
|
||||
Para averiguar la ruta donde se instaló FireBird, porque FireBird lo puedes instalar en cualquier carpeta.
Cita:
Teclea esto desde la consola de comandos (tipo ms-dos), o desde el boton de Inicio de windows, opcion "Ejecutar": C:\Archivos de programa\Firebird\Firebird_1_5\bin\gsec -USER SYSDBA -PASSWORD masterkey -add gustavo -pw lucenys
__________________
Progress Openedge https://abevoelker.com/progress_open...dered_harmful/ Delphi forever... |
#13
|
||||
|
||||
Hola defcon1_es, ciertamente te agradezco mucho la ayuda que me haz prestado y la paciencia que haz tenido. He comprendido, sólo hasta hoy, tu código, y me ha funcionado perfectamente...
Gracias a ti y a todos los que enviaron sus aportes |
#14
|
|||
|
|||
Solo para agregar algo:
uso los componentes FIBPlus y este tiene uno TpFIBSecurityService paleta FIBPlusServices el cual se encarga de adminstrar usuarios. las rutinas para crear, eliminar o modificar son estas: Crear usuario:
Modificar usuario:
Borrar usuario:
Supongo y otros componentes libres como zeos tienen implementada esta funcion. Como referencia te dejo el link Codigo Fuente Última edición por jconnor82 fecha: 13-03-2009 a las 14:35:15. |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Crear Usuarios en Firebird | kpss8m | Firebird e Interbase | 18 | 20-10-2012 01:05:24 |
Usuarios en FireBird | mRoman | Conexión con bases de datos | 7 | 28-08-2008 13:47:18 |
Usuarios y seguridad en Firebird | dango | Firebird e Interbase | 4 | 11-07-2006 18:13:26 |
usuarios con IB Expert for Firebird | ale21alito | Conexión con bases de datos | 2 | 03-04-2005 19:08:12 |
Usuarios en Firebird | pzhero | Firebird e Interbase | 4 | 03-05-2004 22:30:44 |
|