none
Usuarios e Inicio de Sesión (SQL Server 2008 Express)

    Question

  • Intento crear un sistema para la gestión de un repositorio de noticias alojado en una base de datos en SQL Server 2008 Express.

    Tenía la intención de hacer que los usuarios de la aplicación (que serán de dos tipos) fueran usuarios de la base de datos que contiene el repositorio. Lo que trato de hacer no es tener una tabla con los usuarios y sus passwords, quiero usar los propios usuarios de SQL Server para esa base de datos.

    No se si esto es posible, requeriria que desde la aplicación se crearan usuarios SQL Server para esa base de datos. Los usuarios son de dos tipos:

    - Usuarios de consulta, podria ser un unico usuario genérico que no necesitara hacer login explicito por formulario de login/password si no uno creado explicitamente y que si no se especifica lo contrario se utilice el genérico. Solo pueden leer datos.
    - Usuarios de edición, son los que podrán consultar y modificar los datos de la base de datos, así como crear otros usuarios editores.

    Alguna idea, alguna sugerencia de como configurar la seguridad de SQL Server para que esto sea posible? Tengo un inicio de sesión creado y un usuario en  la base de datos, pero por lo que veo no se pueden asignar dos usuarios al mismo inicio de sesión.

    Gracias por adelantado.
    Monday, January 25, 2010 7:22 PM

Answers

  • Para los usuarios Usuarios de Consulta usted puede crear un login y asignarlo a los roles db_datareader y db_denydatawriter de la base de datos. Con eso logra que dicho usuario pueda leer datos y le niega permisos para escribir.

    Para los Usuarios de Edición, para crearlos se debe usar la sentencia CREATE LOGIN. El login usado para conectarse a ejecutar CREATE LOGIN debe tener el permiso ALTER ANY LOGIN o ALTER LOGIN en el servidor. Estos usuarios deben pertenecer al rol db_datawriter.

    Vea los detalles en el manual:

    CREATE LOGIN (Transact-SQL)
    http://msdn.microsoft.com/es-es/library/ms189751.aspx

    ALTER LOGIN (Transact-SQL)
    http://msdn.microsoft.com/es-es/library/ms189828.aspx


    Gustavo Larriera Sosa, Microsoft MVP | ascii164.blogspot.com | /*Este mensaje se proporciona tal como es, sin garantías de ninguna clase.*/
    Monday, January 25, 2010 7:34 PM
    Moderator