sys.sql_logins (Transact-SQL)

适用于:SQL ServerAzure SQL 数据库Azure SQL 托管实例Analytics Platform System (PDW)

为每个 SQL Server 身份验证登录名返回一行。

列名称 数据类型 说明
<inherited columns> 继承自 sys.server_principals
is_policy_checked 检查密码策略。
is_expiration_checked 检查密码过期。
password_hash varbinary(256) SQL 登录密码的哈希。 在 SQL Server 2022(16.x)和早期版本中,存储的密码信息是使用加盐密码的 SHA-512 计算的。 从 SQL Server 2025(17.x) 预览版开始,将使用迭代哈希算法RFC2898(PBKDF)。 哈希的第一个字节指示版本: 0x02 对于版本 2(SQL Server 2022(16.x)及更低版本),以及 0x03 版本 3(SQL Server 2025 (17.x) 预览版及更高版本)。

有关此视图继承的列的列表,请参阅 sys.server_principals。 列 owning_principal_idis_fixed_role 不继承自sys.server_principals。

注解

若要查看 SQL Server 身份验证登录名和 Windows 身份验证登录名,请参阅 sys.server_principals

启用包含的数据库用户后,无需登录即可建立连接。 若要标识这些帐户,请参阅 sys.database_principals

权限

在 SQL Server 中,任何 SQL Server 身份验证登录名都可以看到自己的登录名和 sa 登录名。 若要查看其他登录名,主体需要 ALTER ANY LOGINVIEW SERVER SECURITY DEFINITION登录权限。

若要查看其内容 password_hash columnCONTROL SERVER 需要。 从 SQL Server 2022(16.x)开始, VIEW ANY CRYPTOGRAPHICALLY SECURED DEFINITION 需要权限。

在 Azure SQL 数据库中,只有特殊数据库角色 loginmanagermaster 的成员或Microsoft Entra Admin 和服务器管理员才能查看所有登录名。

目录视图中仅显示用户拥有的安全对象的元数据,或用户对其拥有某些权限的安全对象的元数据。 有关详细信息,请参阅 Metadata Visibility Configuration