SQL 2008 登录密码存储在哪里?

Bra*_*rad 9 password sql-server

我需要知道 SQL Server 2008 实际将密码存储在哪个文件中。这是安全审核员提出的问题。

我知道我可以使用 获取密码哈希值LOGINPROPERTY('bbellomo', 'PasswordHash'),但这对我没有帮助;我需要知道它们是如何存储的。

Ben*_*hul 6

密码不以明文形式存储。如果审核员确实需要存储它们的文件,请将它们指向 master.mdf 文件。当然,这适用于 SQL 登录。对于 Windows 登录,SQL 甚至不知道密码是什么;Active Directory 处理身份验证。


小智 5

尝试查看数据库sys.server_principals中的用户名和密码master。但是密码不是以明文形式存储的。


Bra*_*rad 5

'SELECT password FROM syslogins' 的执行计划显示密码存储在sys.sysxlgnsmaster 数据库中。

看一看: 系统基表

这是密码,SQL Server 将仅以 2 种格式向我们显示它们:

SELECT name, password, LOGINPROPERTY(name, 'PasswordHash' ) hash
FROM syslogins
WHERE password IS NOT NULL
ORDER BY name
Run Code Online (Sandbox Code Playgroud)

您可能可以轻松地在格式之间进行转换,但我不知道如何进行。