sp_validatelogins (Transact-SQL)


Updated: June 10, 2016

Reports information about Windows users and groups that are mapped to SQL Server principals but no longer exist in the Windows environment.

Applies to: SQL Server (SQL Server 2008 through current version).

Topic link icon Transact-SQL Syntax Conventions


0 (success) or 1 (failure)

Column nameData typeDescription
SIDvarbinary(85)Windows security identifier (SID) of the Windows user or group.
NT LoginsysnameName of the Windows user or group.

If the orphaned server-level principal owns a database user, the database user must be removed before the orphaned server principal can be removed. To remove a database user, use DROP USER. If the server-level principal owns securables in the database, ownership of the securables must be transferred or they must be dropped. To transfer ownership of database securables, use ALTER AUTHORIZATION.

To remove mappings to Windows users and groups that no longer exist, use DROP LOGIN.

Requires membership in the sysadmin or securityadmin fixed server role.

The following example displays the Windows users and groups that no longer exist but are still granted access to an instance of SQL Server.

EXEC sp_validatelogins;  

System Stored Procedures (Transact-SQL)
Security Stored Procedures (Transact-SQL)
DROP USER (Transact-SQL)

Community Additions