none
crear usuarios/grupos/privilegios RRS feed

  • Pregunta

  • Buenas,

    por mas que busco y pruebo opciones (scrips)  no me sale, necesito esto

    Usuario: Nadia

    Clave: nm618

    Permiso para la base de datos: "CE"

    Para la tabla: Alumnos

    Privilegio: Insertar, eliminar y modificar, select

    y necesito que el usuario este en el grupo ADMINISTRACION

    junto con otros usuarios

    por favor si pueden ayudarme..

    viernes, 29 de octubre de 2010 0:54

Respuestas

  • Hola.

    Sobre crear el usuario, con esa contraseña, dar acceso a la base de datos y otorgar permisos de lectura y modificación para una tabla concreta, dando por entendidas una serie de premisas deducidas de lo que creo que quieres hacer (que podría equivocarme, sin duda), sería así:

    USE [master]
    GO
    CREATE LOGIN [Nadia] WITH PASSWORD=N'nm618', DEFAULT_DATABASE=[CE]
    GO
    USE [CE]
    GO
    CREATE USER [Nadia] FOR LOGIN [Nadia]
    GO
    USE [CE]
    GO
    ALTER USER [CE] WITH DEFAULT_SCHEMA=[dbo]
    GO
    GRANT SELECT, INSERT, UPDATE, DELETE ON [Alumnos] TO [Nadia]
    GO
    

     

    A partir de ahí, habría que saber qué entiendes por el grupo "ADMINISTRACION" para lo que queda. ¿Es un grupo de usuarios de Windows? ¿Un departamento de la empresa? ¿Una función? En ese caso, ¿qué función? ¿Pretendes encapsular permisos en él?

     


    Alberto López Grande
    SQL Server MVP
    Visita mi blog en http://qwalgrande.blogspot.es/

    viernes, 29 de octubre de 2010 19:34
    Moderador
  • Me parece que lo que necesitas es esto: USE [CE]
    GO

    CREATE ROLE [ADMINISTRADORES]
    GO

    ALTER AUTHORIZATION ON SHCHEMA::[db_owner] TO [ADMINISTRADORES]
    GO

    GRANT INSERT ON [dbo].[Alumnos] TO [ADMINISTRADORES]
    GO

    GRANT DELETE ON [dbo].[Alumnos] TO [ADMINISTRADORES]
    GO

    GRANT SELECT ON [dbo].[Alumnos] TO [ADMINISTRADORES]
    GO

    GRANT UPDATE ON [dbo].[Alumnos] TO [ADMINISTRADORES]
    GO

    Si quieres agregar un usuario a este rol, entonces ejecutas:

    Exec sp_addrolemember 'ADMINISTRADORES', 'Nadia'

    Espero que te sirva.


    Willy Taveras.-

    http://itlearn.net

    • Marcado como respuesta nadiama lunes, 8 de noviembre de 2010 1:20
    lunes, 8 de noviembre de 2010 1:10
    Moderador

Todas las respuestas

  • En caso de que no tengas el grupo (Database Role) creado, pudes crearlo utilizando esto:

    USE [<Base_Datos>]
    GO
    CREATE ROLE [Administracion] AUTHORIZATION [dbo]
    GO
    
    USE [<Base_Datos>]
    GO
    ALTER AUTHORIZATION ON SCHEMA::[db_owner] TO [Administracion]
    GO
    

    Explicación: En el código anterior lo que hago es crear un Rol de Base de Datos llamado Administración, donde el propietario es dbo y luego asigno el privilegio de ser db_owner al Rol ya creado, por lo que cada miembro de este nuevo Rol tendría el mismo privilegio.

     

    Para agregar un Usuario a un Rol en el servidor puedes utilizar este procedimiento siguiendo la siguiente sintaxis:

     

    exec sp_addrolemember 'db_owner', '<nombre_usuario>'

     

    Esto también lo puedes hacer en la sección de Seguridad de la Base de Datos, luego vas a Roles/Roles de Base de Datos y darle a propiedades en el Rol deseado, en tu caso "Administración", después en la sección de Role Members puedes presionar el botón agregar y elegir el usuario que deseas, en tu caso "Nadia".

     

    Espero que te sirva.

     


    Willy Taveras.-
    viernes, 29 de octubre de 2010 2:13
    Moderador
  • Hola.

    Sobre crear el usuario, con esa contraseña, dar acceso a la base de datos y otorgar permisos de lectura y modificación para una tabla concreta, dando por entendidas una serie de premisas deducidas de lo que creo que quieres hacer (que podría equivocarme, sin duda), sería así:

    USE [master]
    GO
    CREATE LOGIN [Nadia] WITH PASSWORD=N'nm618', DEFAULT_DATABASE=[CE]
    GO
    USE [CE]
    GO
    CREATE USER [Nadia] FOR LOGIN [Nadia]
    GO
    USE [CE]
    GO
    ALTER USER [CE] WITH DEFAULT_SCHEMA=[dbo]
    GO
    GRANT SELECT, INSERT, UPDATE, DELETE ON [Alumnos] TO [Nadia]
    GO
    

     

    A partir de ahí, habría que saber qué entiendes por el grupo "ADMINISTRACION" para lo que queda. ¿Es un grupo de usuarios de Windows? ¿Un departamento de la empresa? ¿Una función? En ese caso, ¿qué función? ¿Pretendes encapsular permisos en él?

     


    Alberto López Grande
    SQL Server MVP
    Visita mi blog en http://qwalgrande.blogspot.es/

    viernes, 29 de octubre de 2010 19:34
    Moderador
  • Buenas ADMINISTRACION ES UN GRUPO COMO SER PROFESORES, O DIRECTIVOS y a cada uno de estos grupos le debo asignar usuarios y le asignos los permisos por grupos no por usuarios

    lunes, 8 de noviembre de 2010 0:29
  • Me parece que lo que necesitas es esto: USE [CE]
    GO

    CREATE ROLE [ADMINISTRADORES]
    GO

    ALTER AUTHORIZATION ON SHCHEMA::[db_owner] TO [ADMINISTRADORES]
    GO

    GRANT INSERT ON [dbo].[Alumnos] TO [ADMINISTRADORES]
    GO

    GRANT DELETE ON [dbo].[Alumnos] TO [ADMINISTRADORES]
    GO

    GRANT SELECT ON [dbo].[Alumnos] TO [ADMINISTRADORES]
    GO

    GRANT UPDATE ON [dbo].[Alumnos] TO [ADMINISTRADORES]
    GO

    Si quieres agregar un usuario a este rol, entonces ejecutas:

    Exec sp_addrolemember 'ADMINISTRADORES', 'Nadia'

    Espero que te sirva.


    Willy Taveras.-

    http://itlearn.net

    • Marcado como respuesta nadiama lunes, 8 de noviembre de 2010 1:20
    lunes, 8 de noviembre de 2010 1:10
    Moderador
  • si muchas gracias, me ha servido de mucho..
    • Marcado como respuesta nadiama lunes, 8 de noviembre de 2010 1:20
    • Desmarcado como respuesta nadiama lunes, 8 de noviembre de 2010 1:20
    lunes, 8 de noviembre de 2010 1:18