SQL Server и проверка подлинности по протоколу Kerberos

Kerberos — протокол сетевой проверки подлинности, обеспечивающий метод высокой степени безопасности для проверки подлинности сущности клиента и сервера (участников безопасности) в сети. Эти участники безопасности используют проверку подлинности, основанную на главных ключах и зашифрованных билетах.

В модели протокола Kerberos каждое соединение клиент-сервер начинается с проверки подлинности. Клиент и сервер, по очереди, выполняют последовательность действий, созданных для проверки каждым участником соединения того, что участник на другом конце подлинный. Если проверка подлинности завершена успешно, сеанс установки соединения завершается и устанавливается безопасный сеанс клиент-сервер.

Проверка подлинности с помощью протокола Kerberos обладает следующими преимуществами.

  • Взаимная проверка подлинности. Клиент может проверить идентификатор участника на уровне сервера, а сервер может проверить клиента. Несмотря на то что в документации эти две сущности называются «клиент» и «сервер», безопасные сетевые подключения могут выполняться между серверами.

  • Билеты безопасной проверки подлинности. Используются только зашифрованные билеты, и пароли никогда не включаются в билет.

  • Встроенная проверка подлинности. После того как пользователь вошел в систему, ему не требуется входить повторно, чтобы получить доступ к какой-либо службе, поддерживающей проверку подлинности протокола Kerberos, в течение срока действия билета. Каждый билет имеет время существования, определяемое политикой области Kerberos, создающей билет.

Протокол Kerberos обеспечивает механизм для взаимной проверки подлинности между сущностями перед установкой безопасного сетевого соединения. Протокол Kerberos использует доверенного третьего участника, центр распространения ключей (KDC), упрощающего создание и безопасное распространение билетов проверки подлинности и симметричных ключей сеанса. Центр распространения ключей запускается на безопасном сервере как служба и поддерживает базу данных для всех участников безопасности в своей области. В контексте протокола Kerberos область является эквивалентом домена Windows.

ПримечаниеПримечание

За безопасность главного ключа отвечают и клиент, и сервер; центр распространения ключей (KDC) только дает билет, предоставляющий сервис.

В окружении Windows функции центра распространения ключей (KDC) предоставляются контроллеру домена, и обычно используется Active Directory. Все пользователи домена Windows являются действующими участниками протокола Kerberos и способны использовать проверку подлинности протокола Kerberos.

Протокол Kerberos с SQL Server

SQL Server косвенно поддерживает протокол Kerberos через интерфейс поставщика службы безопасности Windows (SSPI), если SQL Server использует проверку подлинности Windows. Интерфейс SSPI позволяет приложению использовать разные модели безопасности, доступные на компьютере или в сети без изменения интерфейса системы безопасности.

SQL Server позволяет интерфейсу SSPI согласовать протокол проверки подлинности. Если протокол Kerberos не может быть использован, Windows вернется к проверке подлинности Windows NT вызов-ответ (NTLM).

SQL Server 2008 поддерживает проверку подлинности Kerberos для следующих протоколов.

  • TCP/IP

  • Именованные каналы

  • Общая память

Дополнительные сведения о предшествующих протоколах см. в разделе Сетевые протоколы и конечные точки потока табличных данных.

При возможности рекомендуется использовать проверку подлинности Kerberos для соединений с экземпляром SQL Server.