sp_revokelogin (Transact-SQL)

適用於:SQL Server

針對使用 CREATE LOGIN、 sp_grantloginsp_denylogin建立的 Windows 使用者或群組,從 SQL Server 移除登入專案。

重要

SQL Server 的未來版本將移除此功能。 請避免在新的開發工作中使用這項功能,並規劃修改目前使用這項功能的應用程式。 請改用 DROP LOGIN

Transact-SQL 語法慣例

語法

  
sp_revokelogin [ @loginame= ] 'login'  

引數

[ @loginame = ] 'login' 這是 Windows 使用者或群組的名稱。 loginsysname,沒有預設值。 login 可以是計算機名稱\使用者或網域\用戶表單中的任何現有 Windows 使用者名稱或群組。

傳回碼值

0 (成功) 或 1 (失敗)

備註

sp_revokelogin使用login參數指定的帳戶停用連線。 但是,透過 Windows 群組成員資格授與 SQL Server 實例存取權的 Windows 使用者,在撤銷其個別存取權之後,仍可連線為群組。 同樣地,如果 登入 參數指定 Windows 群組的名稱,則已個別授與 SQL Server 實例之存取權的該群組成員仍然可以連線。

例如,如果 Windows 使用者 ADVWORKS\john 是 Windows 群組 ADVWORKS\管理員 的成員,且sp_revokelogin撤銷 的存取ADVWORKS\john權:

sp_revokelogin [ADVWORKS\john]  

如果 ADVWORKS\管理員 已獲授與 SQL Server 實例的存取權,使用者 ADVWORKS\john 仍然可以連線。 同樣地,如果 Windows 群組 ADVWORKS\管理員 已撤銷其存取權,但 ADVWORKS\john 獲得存取權,ADVWORKS\john 仍然可以連線。

使用 sp_denylogin 來明確防止用戶連線到 SQL Server 實例,而不論其 Windows 群組成員資格為何。

sp_revokelogin無法在使用者定義的交易內執行。

權限

需要伺服器的 ALTER ANY LOGIN 權限。

範例

下列範例會移除 Windows 使用者的 Corporate\MollyA登入專案。

EXEC sp_revokelogin 'Corporate\MollyA';  

Or

EXEC sp_revokelogin [Corporate\MollyA];  

另請參閱

安全性預存程序 (Transact-SQL)
DROP LOGIN (Transact-SQL)
sp_denylogin (Transact-SQL)
sp_droplogin (Transact-SQL)
sp_grantlogin (Transact-SQL)
系統預存程序 (Transact-SQL)