sp_adduser (Transact-SQL)
Agrega un nuevo usuario a la base de datos actual.
Importante
|
|---|
|
Esta característica se quitará en una versión futura de Microsoft SQL Server. Evite utilizar esta característica en nuevos trabajos de desarrollo y tenga previsto modificar las aplicaciones que actualmente la utilizan. En su lugar, use CREATE USER. |
sp_adduser también creará un esquema con el nombre del usuario.
Después de agregar un usuario, utilice las instrucciones GRANT, DENY y REVOKE para definir los permisos que controlan las actividades del usuario.
Para presentar la lista de los nombres de inicio de sesión válidos, utilice sys.server_principals.
Para presentar la lista de los nombres de función válidos, utilice sp_helprole. Cuando se especifica una función, el usuario obtiene automáticamente los permisos definidos para esa función. Si no se especifica una función, el usuario obtiene los permisos concedidos a la función predeterminada public. Para agregar un usuario a una función, debe suministrar un valor para el user name. (username puede ser el mismo que login_id.)
El usuario guest ya existe en todas las bases de datos. Al agregar el usuario guest se habilitará este usuario, si se deshabilitó anteriormente. De forma predeterminada, el usuario guest está deshabilitado en las bases de datos nuevas.
sp_adduser no se puede ejecutar en una transacción definida por el usuario.
No puede agregar un usuario guest porque el usuario guest ya existe en todas las base de datos. Puede habilitar el usuario guest, conceda permiso CONNECT a guest como se muestra a continuación:
GRANT CONNECT TO guest; GO
A. Agregar un usuario de base de datos
En el siguiente ejemplo se agrega el usuario de base de datos Vidur a la función Recruiting existente en la base de datos actual, utilizando el inicio de sesión Vidur de SQL Server existente.
EXEC sp_adduser 'Vidur', 'Vidur', 'Recruiting'
B. Agregar un usuario de base de datos con el mismo Id. de inicio de sesión
En el siguiente ejemplo se agrega el usuario Arvind a la base de datos para el inicio de sesión Arvind de SQL Server . Este usuario pertenece a la función public predeterminada.
EXEC sp_adduser 'Arvind'
C. Agregar un usuario de base de datos con un nombre diferente de su inicio de sesión en el nivel de servidor
En el siguiente ejemplo se agrega el inicio de sesión BjornR de SQL Server a la base de datos actual que tiene un nombre de usuario Bjorn, y agrega un usuario de base de datos Bjorn a la función de base de datos Production.
EXEC sp_adduser 'BjornR', 'Bjorn', 'Production'

Importante