sp_revokelogin (Transact-SQL)

從 SQL Server 中移除使用 CREATE LOGIN、sp_grantloginsp_denylogin 建立之 Windows 使用者或群組的登入項目。

重要事項重要事項

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

主題連結圖示 Transact-SQL 語法慣例

語法

sp_revokelogin [ @loginame= ] 'login'

引數

  • [ @loginame=] 'login'
    這是 Windows 使用者或群組的名稱。 login 是 sysname,沒有預設值。 login 可以是任何現有的 Windows 使用者名稱或群組,其格式為 Computer name\User or Domain\User。

傳回碼值

0 (成功) 或 1 (失敗)

備註

sp_revokelogin 會停用以 login 參數指定之帳戶的連接。 但是在撤銷其個別存取權之後,透過 Windows 群組成員資格獲得 SQL Server 執行個體存取權的 Windows 使用者仍然可以用群組方式進行連接。 相同地,如果 login 參數指定了 Windows 群組的名稱,個別獲授與 SQL Server 執行個體存取權的該群組成員仍然可以進行連接。

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

sp_revokelogin [ADVWORKS\john]

如果 ADVWORKS\Admins 獲授與 SQL Server 執行個體存取權,使用者 ADVWORKS\john 仍然可以進行連接。 同樣地,如果 Windows 群組 ADVWORKS\Admins 的存取權被撤銷但是 ADVWORKS\john 獲授與存取權,則 ADVWORKS\john 仍然可以進行連接。

請使用 sp_denylogin 明確防止使用者連接到 SQL Server 執行個體,不管其 Windows 群組成員資格。

sp_revokelogin 無法在使用者自訂交易內執行。

權限

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

範例

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

EXEC sp_revokelogin 'Corporate\MollyA'

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)