Compartir a través de


sp_revokelogin (Transact-SQL)

Se aplica a: SQL Server

Quita las entradas de inicio de sesión de SQL Server para un usuario o grupo de Windows creado mediante CREATE LOGIN, sp_grantlogino sp_denylogin.

Importante

Esta característica se quitará en una versión futura de SQL Server. Evite utilizar esta característica en nuevos trabajos de desarrollo y tenga previsto modificar las aplicaciones que actualmente la utilizan. Use DROP LOGIN en su lugar.

Convenciones de sintaxis de Transact-SQL

Sintaxis

sp_revokelogin [ @loginame = ] N'loginame'
[ ; ]

Argumentos

[ @loginame = ] N'loginame'

Nombre del usuario o grupo de Windows. @loginame es sysname, sin ningún valor predeterminado. @loginame puede ser cualquier nombre de usuario o grupo de Windows existente en el formulario <ComputerName>\<User> o <Domain>\<User>.

Valores de código de retorno

0 (correcto) o 1 (erróneo).

Comentarios

sp_revokelogin deshabilita las conexiones mediante la cuenta especificada por @loginame. Los usuarios de Windows a los que se concede acceso a una instancia de SQL Server a través de la pertenencia a un grupo de Windows, pueden conectarse como grupo una vez revocado su acceso individual. Del mismo modo, si @loginame especifica el nombre de un grupo de Windows, los miembros de ese grupo a los que se ha concedido acceso por separado a la instancia de SQL Server todavía pueden conectarse.

Por ejemplo, si el usuario ADVWORKS\john de Windows es miembro del grupo ADVWORKS\Adminsde Windows y sp_revokelogin revoca el acceso de ADVWORKS\john:

EXEC sp_revokelogin [ADVWORKS\john]

El usuario ADVWORKS\john todavía puede conectarse si ADVWORKS\Admins se concede acceso a una instancia de SQL Server. De forma similar, si el grupo ADVWORKS\Admins de Windows tiene su acceso revocado, pero ADVWORKS\john se le concede acceso, ADVWORKS\john todavía puede conectarse.

Use sp_denylogin para impedir explícitamente que los usuarios se conecten a una instancia de SQL Server, independientemente de su pertenencia a grupos de Windows.

sp_revokelogin no se puede ejecutar dentro de una transacción definida por el usuario.

Permisos

Requiere el permiso ALTER ANY LOGIN en el servidor.

Ejemplos

En el ejemplo siguiente se quitan las entradas de inicio de sesión para el usuario Corporate\MollyAde Windows.

EXEC sp_revokelogin 'Corporate\MollyA';

Or

EXEC sp_revokelogin [Corporate\MollyA];