Usuarios en sql server

Es posible crear usuarios en la BD por programación, y si es posible como se lo puede hacer

1 Respuesta

Respuesta
1
En los libros en pantalla busca sp_adduser (te da 12 temas, el primero es de t-sql, y recomienda usar en su lugar sp_grantdbaccess el cual a su vez te da 22 temas, el primero de ellos también es t-sql)
sp_grantdbaccess (T-SQL)
Agrega una cuenta de seguridad en la base de datos actual para un inicio de sesión de Microsoft SQL Server o un usuario o grupo de Microsoft Windows NT®, y le permite recibir permisos para realizar actividades en la base de datos.
Sintaxis
sp_grantdbaccess [@loginame =] 'inicioSesión'
[,[@name_in_db =] 'nombreEnBaseDatos' [OUTPUT]]
Argumentos
[@loginame =] 'inicioSesión'
Es el nombre de inicio de sesión de la nueva cuenta de seguridad en la base de datos actual. Los grupos y usuarios de Windows NT deben calificarse con un nombre de dominio de Windows NT en la forma Dominio\Usuario, por ejemplo LONDON\Joeb. El inicio de sesión no puede estar ya asociado mediante alias a una cuenta de la base de datos. InicioSesión es de tipo sysname y no tiene un valor predeterminado.
[@name_in_db =] 'nombreEnBaseDatos' [OUTPUT]
Es el nombre de la cuenta en la base de datos. NombreEnBaseDatos es una variable OUTPUT con el tipo de datos sysname y su valor predeterminado es NULL. Cuando no se especifique, se utilizará inicioSesión. Si se especifica como variable OUTPUT con un valor NULL, @name_in_db se establece en inicioSesión. NombreEnBaseDatos no debe existir en la base de datos actual.
Valores del código de retorno
0 (correcto) ó 1 (error)
Observaciones
Los nombres de usuario de SQL Server pueden contener entre 1 y 128 caracteres, y pueden incluir letras, símbolos y números. Sin embargo, los nombres de usuario no pueden:
Contener un carácter de barra diagonal inversa (\).
Ser NULL o una cadena vacía (??).
La cuenta de seguridad debe recibir acceso a la base de datos actual antes de que pueda utilizarla. Sólo las cuentas de la base de datos actual pueden administrarse con sp_grantdbaccess. Para quitar una cuenta de una base de datos, utilice sp_revokedbaccess.
Es posible agregar una cuenta de seguridad para guest si no existe ya en la base de datos e inicioSesión también es guest.
No es posible agregar el inicio de sesión sa a una base de datos.
Sp_grantdbaccess no puede ejecutarse desde una transacción definida por el usuario.
Permisos
Sólo los miembros de las funciones fijas de base de datos db_accessadmin o db_owner pueden ejecutar sp_grantdbaccess.
Ejemplos
En este ejemplo se agrega a la base de datos actual una cuenta para el usuario de Windows NT Corporate\GeorgeW y se le asigna el nombre Georgie.
EXEC sp_grantdbaccess 'Corporate\GeorgeW', 'Georgie'
Consulte también
Sp_revokedbaccess Procedimientos almacenados del sistema

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas