none
Otorgar permisos a usuarios en sistema de informacion RRS feed

  • Pregunta

  • Bueno foro, desde hace poco e estado incorporandome mas a fondo con sql aprendiendo sobre usuarios y Triggers, estaba practicando con una pequeña aplicacion la cual conectaba a mi base de datos donde la cadena de conexion utilizaba loggin y password de usuarios dentro de sql server, funciono bastante bien, los usuarios que no tenian permisos de hacer INSERT en mis tablas pues el sql no me dejaba, cosa que era lo que queria.

     

    Como veran la cadena de conexion busca a usuarios dentro de sql y de acuerdo a los permisos que yo les haya otorgado pueden hacer ciertos trabajos en mi base de datos, ahora, es posible crear una tabla en mi BASE DE DATOS con los loggins y passwords de mis usuarios para ir alamacenando e irles otorgando los respectivos permisos en vez de darles loggins por sql? considero que lo mas acertado no es darle permisos por sql porque podrian entrar como usuarios al gestor de base de datos

    miércoles, 8 de junio de 2011 18:18

Respuestas

Todas las respuestas

  • Hola.

    Eso ya es cuestión tuya. Puedes usar la seguridad de SQL Server, que ya viene de serie, así como gestionar los usuarios por grupos de Windows. Luego otorgas permisos a los grupos y con pocos logins en SQL Server puedes gestionar muchos más usuarios. Esto segundo es lo que te recomiendo que hagas.

    También puedes hacerlo como comentas y montar en tu aplicación una gestión de permisos propia. Será más costoso, claro está.


    Alberto López Grande
    SQL Server MVP
    Visita mi blog en http://qwalgrande.blogspot.es/ Sígueme en twitter en http://twitter.com/qwalgrande

    miércoles, 8 de junio de 2011 20:40
    Moderador
  • Gracias por tu respuesta, creo que lei en otro post donde tu respondias y hablabas sobre la posibilidad de crear muchos mas usuarios por los grupos de windows, pero por donde hago eso y disculpa la molestia
    miércoles, 8 de junio de 2011 21:00
  • Hola.

    Sólo has de crear grupos de de Windows, en el directorio activo, y darles permisos al grupo. Luego, gestionar los nuevos usuarios incluyéndolos en los grupos será muy fácil.


    Alberto López Grande
    SQL Server MVP
    Visita mi blog en http://qwalgrande.blogspot.es/ Sígueme en twitter en http://twitter.com/qwalgrande

    • Marcado como respuesta Juanfish miércoles, 8 de junio de 2011 21:44
    miércoles, 8 de junio de 2011 21:12
    Moderador
  • Ok!, gracias por tus sugerencias! seguire practicando.
    miércoles, 8 de junio de 2011 21:45
  • Si, para tu caso, lo mas acertado, es que tu aplicación use un solo usuario de SQL-bbdd, y con este haga todas las acciones.

    Dentro de tu base de datos, creas una tabla, con los usuarios, contra la que se validaran los usuaios en la aplicación, y segun esta tabla la aplicación concedera (permitira hacer) unos permisos u otros, pero siempre atacará la aplicación a la bbdd con el mismo usuario.

    No se si me explico, espero me entiendas.


     Norman M. Pardell 

    ||Microsoft Certified IT Professional|| Database Administrator. Database Developer. SQL Server 2008

    miércoles, 8 de junio de 2011 22:25
  • Si, creo entenderte , fijate, yo tengo otra aplicacion la cual conecta con una base de datos y esa base de datos tiene una tabla que se llama usuarios, al momento de ingresar al sistema, la cadena de conexion llama a un unico usuario del SQL SERVER, y mi adaptador llama a la la tabla usuario y compara el usuario que ingreso la persona con los que se encuentran en la tabla, una vez que la encuentra le da acceso al sistema. En esa tabla tengo un usuario "Secretaria" y un usuario "Jefedepartamento"; secretaria no tiene opciones de eliminar datos entonces lo que hice fue que al momento de ingresar el sistema el usuario secretaria me escondiera el boton eliminar del formulario, mientras que al ingresas Jefededepartamento el boton se iba a ver, claro, esa programacion la hacia en la aplicacion pero no manejo en realidad nada de seguridad por la base de datos al usar este metodo. En cambio con la aplicacion nueva donde la cadena de conexion lleva el nombre de usuario y password de mis usuarios DENTRO de SQL server, asi si puedo manejar un poco mas de seguridad y limitar a mis usuarios y hasta puedo usar disparadores que me capturen que esta haciendo cada usuario.

    En si lo que realmente no se es si tener los usuarios por SQL o por tabla en base de datos, a mi criterio no seria conveniente llenar el SQL de muchos usuarios, lo digo porque los loggins son para entrar en la aplicacion, los usuarios no necesitan ir al SQL server a hacer nada, ellos solo usan la aplicacion.

    Ahora, si no afecta en nada llenar el SQL de usuarios pues los involucro en SQL como Usuarios, y asi puedo controlar mas lo que deben y no deben hacer.

    miércoles, 8 de junio de 2011 23:00