Использование проверки подлинности по протоколу Kerberos в SQL Server
Чтобы использовать проверку подлинности Kerberos с SQL Server, необходимо наличие следующих условий.
Компьютеры клиента и сервера должны быть частью одного домена Windows или доверенных доменов.
Имя участника-службы (SPN) должно быть зарегистрировано в службе каталогов Active Directory, которая играет роль центра распределения ключей в домене Windows. Имя участника-службы после регистрации сопоставляется учетной записи Windows, запустившей экземпляр службы SQL Server. Если регистрация имени участника-службы не была выполнена или завершилась неудачно, уровень безопасности Windows не может определить учетную запись, связанную с именем участника-службы, и проверка подлинности Kerberos не может быть использована.
Примечание Если сервер не может автоматически зарегистрировать имя участника-службы, оно должно быть зарегистрировано вручную.
Можно определить, что соединение использует протокол Kerberos, запросив динамическое административное представление sys.dm_exec_connections. Выполните следующий запрос и проверьте значение в столбце auth_scheme, которое будет равно «KERBEROS», если включен протокол Kerberos.
SELECT auth_scheme FROM sys.dm_exec_connections WHERE session_id = @@spid ;
Роль имени участника-службы при проверке подлинности
Когда приложение открывает соединение и использует проверку подлинности Windows, собственный клиент SQL Server передает SQL Server имя сервера, экземпляр и имя участника-службы (необязательно). Если соединение передает имя участника-службы, то имя используется без изменений.
Если соединение не передает имя участника-службы, создается имя участника-службы по умолчанию, основанное на используемом протоколе, имени сервера и имени экземпляра.
В обоих предыдущих сценариях имя участника-службы посылается в центр распределения ключей, чтобы получить маркер безопасности для проверки подлинности соединения. Если маркер безопасности не может быть получен, используется проверка подлинности NTLM.
См. также