Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > Firebird e Interbase
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 18-10-2006
Avatar de morta71
morta71 morta71 is offline
Miembro
 
Registrado: may 2006
Ubicación: Girona - España
Posts: 30
Poder: 0
morta71 Va por buen camino
Question Usuarios y roles

Como expuse en otro hilo http://www.clubdelphi.com/foros/showthread.php?p=160825 estoy intentando traspasar unas aplicaciones paradox a firebird, y de paso realizo alguna mejora.

Quisiera introducir el control de acceso de usuarios. Con Paradox, había realizado una tabla de Usuarios + Contraseña y tirando millas.

Bien quisiera realizar un control algo más detallado y decente: Usuario, Contraseña, + opciones / operaciones / tablas permitidas.

He estado indagando sobre lo expuesto, y creo deducir que ésto se podría realizar a través de los usuarios de firebird y algo que no entiendo muy bien que son el "rol" o "roles", en lugar de usar una tabla de usuarios y permisos.

¿Voy bien encaminado?, ¿me podeis ampliar información al respecto, o algún link (en castellano) que hable sobre el tema?.

Lo de los usuarios está claro, el tema del "rol" o "roles" está oscuro.

Mil gracias
Responder Con Cita
  #2  
Antiguo 20-10-2006
TJose TJose is offline
Miembro
 
Registrado: may 2003
Posts: 162
Poder: 21
TJose Va por buen camino
Hola morta71, foro!

1) Diferencia entre rol y usuario: un usuario esta definido a nivel servidor y disponible para cualquier base de datos, un rol se define a nivel base de datos.

2) Puedes trabajar implementado reglas de seguridad sin utilizar roles, sólo con usuarios (insisto, defidos en el servidor). Esto es, creas el usuario usuario1 con su correspondiente password. El siguiente paso es asignarles sus permisos en los diferentes objetos de la base de datos, permisos para seleccionar, para insertar, modificar registros en tablas, para ejecurtar ciertos procedimientos, etc. Hasta aqui todo bien, si tu base no es muy grande en un par de horas tendrás debidamente configurados todos los permisos para usuario1. Ahora bien, que pasa si tienes 30 usuarios. Deberás realizar, con suerte y si es que todos tienen el mismo perfil, la misma tarea 30 veces. Esto no es muy práctico

3) Los roles al rescate. Un rol se define en la base de datos, p/ej: rlAdministrador, rlOperador, rlLectura, etc, y en la misma base de datos defino que permisos tendrá cada rol, siguiendo con el ejemplo, rlAdministrador tendrá permisos totales, rlLectura, podrá seleccionar, pero no podrá ni insertar ni modificar registros, etc. Luego asigno roles a usuarios: usuario1 tendrá los roles rl1, rl2, etc, el usuario2 los roles rl1 y rl3, de esta manera una vez que defino los permisos de los roles, agregar un nuevo usuario al sistema y asignarle sus permisos es una tarea muy simple. Además cualquier modificacion en las reglas de permisos la haces una sola vez para un cierto rol y todos los usuarios con este rol adquieren estas modificaciones.

Ejemplo:
Código SQL [-]
create role rlAdministrador;

grant select, insert, update, delete, references on clientes to rladministrador;
grant execute on procedure spabm_clientes to rladministrador;

luego para asignar un rol a un usuario

Código SQL [-]
grant rladministrador to usuario1;

Espero que te sirva. Cualquier duda coméntala

Saludos
TJose

Última edición por TJose fecha: 20-10-2006 a las 06:04:28.
Responder Con Cita
  #3  
Antiguo 20-10-2006
Avatar de morta71
morta71 morta71 is offline
Miembro
 
Registrado: may 2006
Ubicación: Girona - España
Posts: 30
Poder: 0
morta71 Va por buen camino
Gracias TJose por tu cristalina exposición, algo así es lo que he estado buscando, y por supuesto la respuesta estaba delante.

Ya veo, si no entendi mal, está integrado en la misma base de datos, al igual que lo están los dominios, tablas, etc... Es decir que si utilizo una base de datos por empresa o ejercicio fiscal; ya sea creándola desde un script o clonando de algún modo una BD vacía de datos, estaría integrando en cada una de ellas las reglas predefinidas de cada rol al igual que tablas, etc...

Gracias
Responder Con Cita
  #4  
Antiguo 13-12-2007
Avatar de totote
totote totote is offline
Miembro
 
Registrado: oct 2006
Posts: 150
Poder: 18
totote Va por buen camino
Tengo una duda con respecto a esto de roles y usuarios, los usuarios se deben crear antes de ser asignado o al asignarlo a un rol ya se crea? de ser así, que debe ser creado el usuario, como se crea un usuario?

Otra cosa que significa "WITH GRANT OPTION"?

Espero que me puedan ayudar ya que este post tiene mas de un año.

Saludos
__________________
¡Oh nooo! no compartas, compartir es pirateria, compartir te llevara a la carcel - Revolution OS
Responder Con Cita
  #5  
Antiguo 13-12-2007
Avatar de laukri
laukri laukri is offline
Miembro
 
Registrado: dic 2007
Posts: 38
Poder: 0
laukri Va por buen camino
Smile

Cita:
Empezado por totote Ver Mensaje
Tengo una duda con respecto a esto de roles y usuarios, los usuarios se deben crear antes de ser asignado o al asignarlo a un rol ya se crea? de ser así, que debe ser creado el usuario, como se crea un usuario?

Otra cosa que significa "WITH GRANT OPTION"?

Espero que me puedan ayudar ya que este post tiene mas de un año.

Saludos
la opcion "WITH GRANT OPTION" significa que el usuario puede delegar o pasar sus permisos a otros usuarios.
espero que sea eso lo que necesitabas....
saludos
Responder Con Cita
  #6  
Antiguo 13-12-2007
Avatar de laukri
laukri laukri is offline
Miembro
 
Registrado: dic 2007
Posts: 38
Poder: 0
laukri Va por buen camino
Cita:
Empezado por totote Ver Mensaje
Tengo una duda con respecto a esto de roles y usuarios, los usuarios se deben crear antes de ser asignado o al asignarlo a un rol ya se crea? de ser así, que debe ser creado el usuario, como se crea un usuario?

Otra cosa que significa "WITH GRANT OPTION"?

Espero que me puedan ayudar ya que este post tiene mas de un año.

Saludos
no habia leido la primera parte del mensaje...
es indistinto que crees primero el rol y despues los usuarios o viseversa...
Eso si al momento de asignarle a un usuario un rol tienen que estar los 2 creados...
para crear el usuario (en IBExpert): tenes que ir al menu tools --> user manager. y desde alli crear los usuarios.
para crear el rol: create rol ADMINISTRADOR
Para asignarle un rol a un usuario: grant ADMINISTRADOR to NOMBRE_USER

espero q te sirva... saludos
Responder Con Cita
  #7  
Antiguo 13-12-2007
Avatar de totote
totote totote is offline
Miembro
 
Registrado: oct 2006
Posts: 150
Poder: 18
totote Va por buen camino
Greacias, Laukri la verdad que si, me re ayudo. Un saludo y gracias de nuevo
__________________
¡Oh nooo! no compartas, compartir es pirateria, compartir te llevara a la carcel - Revolution OS
Responder Con Cita
  #8  
Antiguo 15-12-2007
Avatar de rastafarey
rastafarey rastafarey is offline
Miembro
 
Registrado: nov 2003
Posts: 927
Poder: 21
rastafarey Va por buen camino
resp

Para lo que quieres hacer es preferible qu etrabajes con una tabla en tu base datos ya que lso rol so para cualqueir db peor si queres trbajar igualmente con los roles pueden ponerle un prefijo a los roles par qu esepas de que base de datos son. Por que tu aplicacion no sera la unica que se conecte al servidor de base de datos
__________________
Todo se puede, que no exista la tecnología aun, es otra cosa.
Responder Con Cita
  #9  
Antiguo 04-02-2008
santiaguinillo santiaguinillo is offline
Miembro
 
Registrado: abr 2007
Ubicación: Viladecans, Barcelona
Posts: 24
Poder: 0
santiaguinillo Va por buen camino
Question Crear usuarios BBDD a través de SQL

Cita:
Empezado por laukri Ver Mensaje
para crear el usuario (en IBExpert): tenes que ir al menu tools --> user manager. y desde alli crear los usuarios.
para crear el rol: create rol ADMINISTRADOR
Para asignarle un rol a un usuario: grant ADMINISTRADOR to NOMBRE_USER

espero q te sirva... saludos

Hola,

estoy buscando como crear un usuario y sólo veo la forma de hacerlo con alguna aplicación (como ibexpert) o bien utilizar gsec.

Necesitaria crear usuarios en tiempo real y a ser posible a través de sentencias sql. No veo documentación que lo indique ni posts en el foro. ¿Existe la posibilidad de hacerlo con sentencias sql?

De no ser posible ¿podría ejecutar gsec desde algún lenguaje? (sh, php, perl...)

Un saludo,
Santi.

EDITO: "Sobre un SGBD Firebird 2.0"

Última edición por santiaguinillo fecha: 04-02-2008 a las 17:03:06.
Responder Con Cita
  #10  
Antiguo 04-02-2008
Avatar de jachguate
jachguate jachguate is offline
Miembro
 
Registrado: may 2003
Ubicación: Guatemala
Posts: 6.254
Poder: 27
jachguate Va por buen camino
Cita:
Empezado por santiaguinillo Ver Mensaje
Necesitaria crear usuarios en tiempo real y a ser posible a través de sentencias sql. No veo documentación que lo indique ni posts en el foro. ¿Existe la posibilidad de hacerlo con sentencias sql?
Aún no, según los planes para el 2008, será la versión 2.5 (a finales del 2008) la que nos de esa característica.

Cita:
Empezado por santiaguinillo
De no ser posible ¿podría ejecutar gsec desde algún lenguaje? (sh, php, perl...)
Si se puede, y es lo que queda.

Hasta luego.

__________________
Juan Antonio Castillo Hernández (jachguate)
Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate
Responder Con Cita
  #11  
Antiguo 05-02-2008
santiaguinillo santiaguinillo is offline
Miembro
 
Registrado: abr 2007
Ubicación: Viladecans, Barcelona
Posts: 24
Poder: 0
santiaguinillo Va por buen camino
Agradecimientos

Gracias por todo jachguate,

guardaré tu blog en marcadores de firefox para seguir el calendario de Firebird.

Un saludo,
Santi.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Acerca de los Roles y Usuarios en IB Expert Firebird Michel Firebird e Interbase 2 04-02-2008 17:30:19
Permisos, roles y usuarios TJose Firebird e Interbase 0 04-04-2005 16:22:19
Recuperar roles y lista de usuarios de la DB alehillebrand Firebird e Interbase 3 19-02-2005 19:14:21
roles, sesiones y usuarios de oracle 7.3 y delphi 7 rcrmilo Oracle 12 03-06-2004 19:22:23
Roles - Usuarios y privilegios Osorio Firebird e Interbase 2 13-02-2004 23:34:31


La franja horaria es GMT +2. Ahora son las 15:23:43.


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
Copyright 1996-2007 Club Delphi