Где хранятся пароли для входа в SQL 2008?

9

Мне нужно знать, в каком файле SQL Server 2008 на самом деле хранятся пароли. Это вопрос, который задает аудитор безопасности.

Я знаю, что могу получить хеши паролей LOGINPROPERTY('bbellomo', 'PasswordHash'), но это не помогает мне; Мне нужно знать, как они хранятся.

штифтик
источник

Ответы:

6

Пароли не хранятся в открытом виде. Если аудитору действительно нужен файл, в котором они хранятся, укажите их в файле master.mdf. Это, конечно, для логинов SQL. Для входа в Windows SQL даже не знает, какой пароль; Active Directory обрабатывает аутентификацию.

Бен Тул
источник
5

Попробуйте заглянуть в sys.server_principalsимена пользователей и пароли в masterбазе. Но пароли не хранятся в открытом виде.

JONH
источник
Дайте ему SELECT * FROM SYSLOGINS, если он / она действительно нуждается в выводе
jl.
5

План выполнения из «SELECT password FROM syslogins» показывает, что пароли хранятся sys.sysxlgnsв базе данных master.

Взгляните на: системные базовые таблицы

Вот пароли, в двух форматах SQL Server покажет их нам:

SELECT name, password, LOGINPROPERTY(name, 'PasswordHash' ) hash
FROM syslogins
WHERE password IS NOT NULL
ORDER BY name

Вероятно, вы можете легко конвертировать между форматами, но я не знаю, как это сделать.

штифтик
источник
это работает, только если у вас достаточно прав на сервере. Согласно BOL это требует разрешения CONTROL SERVER. (см. msdn.microsoft.com/en-us/library/ms345412(v=sql.120).aspx )
Хенрик Стаун Поульсен,