Выбор режима проверки подлинности
Во время процесса установки следует выбрать режим проверки подлинности для компонента Компонент Database Engine. Существует два возможных режима: режим проверки подлинности Windows и смешанный режим. Режим проверки подлинности Windows включает проверку подлинности Windows и отключает проверку подлинности SQL Server. В смешанном режиме включены как проверка подлинности Windows, так и проверка подлинности SQL Server. Проверка подлинности Windows доступна всегда, и отключить ее нельзя.
Настройка режима проверки подлинности
Если во время установки был выбран смешанный режим проверки подлинности, необходимо задать и подтвердить надежный пароль для встроенной учетной записи системного администратора SQL Server с именем sa. Учетная запись sa устанавливает соединения с помощью проверки подлинности SQL Server.
Если во время установки была выбрана проверка подлинности Windows, программа установки создаст учетную запись sa для проверки подлинности SQL Server, но она будет отключена. Если позже переключиться на смешанный режим проверки подлинности и потребуется учетная запись sa, ее нужно будет включить. Любая учетная запись Windows или SQL Server может быть настроена в качестве системного администратора. Поскольку учетная запись sa широко известна и часто является целью злонамеренных пользователей, не рекомендуется включать учетную запись sa (за исключением тех случаев, когда это необходимо приложению). Никогда не задавайте пустой или простой пароль для учетной записи sa. Сведения о переключении проверки подлинности Windows на смешанный режим проверки подлинности и использовании проверки подлинности SQL Server см. в разделе Изменение режима проверки подлинности сервера.
Соединение с использованием проверки подлинности Windows
Когда пользователь подключается с помощью пользовательской учетной записи Windows, SQL Server проверяет имя учетной записи и пароль с помощью токена участника Windows в операционной системе. Это означает, что удостоверение пользователя было подтверждено Windows. SQL Server не запрашивает пароль и не выполняет проверку удостоверения. Проверка подлинности Windows является проверкой подлинности по умолчанию; она обеспечивает более высокий уровень безопасности, чем проверка подлинности SQL Server. Режим проверки подлинности Windows использует протокол безопасности Kerberos, реализует политику паролей в отношении проверки сложности надежных паролей, поддерживает блокировку учетных записей и истечение срока пароля. Соединение, установленное с помощью проверки подлинности Windows, иногда называется доверительным соединением, поскольку SQL Server доверяет учетным данным, предоставляемым Windows.
С помощью проверки подлинности Windows можно создать группы Windows на уровне домена, а имя входа можно создать на уровне SQL Server для всей группы. Управление доступом на уровне домена позволяет упростить администрирование учетных записей.
Примечание по безопасности |
---|
По возможности используйте проверку подлинности Windows. |
Соединение с использованием проверки подлинности SQL Server
Если используется проверка подлинности SQL Server, в SQL Server создаются имена входа, которые не основаны на учетных записях пользователей Windows. И имя пользователя, и пароль создаются с помощью SQL Server и хранятся в SQL Server. Пользователи, подключающиеся с помощью проверки подлинности SQL Server, должны предоставлять свои учетные данные (имя входа и пароль) каждый раз при установке соединения. При использовании проверки подлинности SQL Server необходимо задавать надежные пароли для всех учетных записей SQL Server. Рекомендации по выбору надежного пароля см. в разделе Надежные пароли.
Для имен входа SQL Server доступны три дополнительные политики паролей.
Пользователь должен сменить пароль при следующем входе
Требует, чтобы пользователь сменил пароль при следующем подключении. Сменить пароль можно с помощью среды Среда SQL Server Management Studio. Если используется этот режим, сторонние разработчики программного обеспечения должны предоставлять данную функцию.
Задать срок окончания действия пароля
Для имен входа SQL Server будет принудительно реализовываться политика максимального возраста паролей.
Требовать использование политики паролей
Для имен входа SQL Server будут принудительно реализовываться политики паролей Windows. Это включает длину и сложность паролей. Эта возможность обеспечивается API NetValidatePasswordPolicy, который доступен только в Windows Server 2003 и более поздних версиях.
Определение политик паролей на локальном компьютере
В меню Пуск выберите команду Выполнить.
В диалоговом окне Выполнить введите secpol.msc и нажмите кнопку ОК.
В приложении Локальная политика безопасности разверните узлы Настройки безопасности и Политики учетных записей, затем щелкните Политика паролей.
Политики паролей будут описаны в панели результатов.
Недостатки проверки подлинности SQL Server
Если пользователь является пользователем домена Windows, имеющим имя входа и пароль Windows, то для подключения он все равно должен предоставить другое имя входа и пароль (SQL Server). Многим пользователям сложно помнить несколько имен входа и паролей. Необходимость предоставлять учетные данные SQL Server при каждом подключении к базе данных может раздражать.
В проверке подлинности SQL Server не может использоваться протокол безопасности Kerberos.
ОС Windows предоставляет дополнительные политики паролей, недоступные для имен входа SQL Server.
Зашифрованный пароль имени входа для проверки подлинности SQL Server необходимо передавать по сети во время установления соединения. Некоторые приложения, которые устанавливают соединение автоматически, сохраняют пароль на клиенте. Эти дополнительные точки, на которые может быть направлена атака.
Преимущества проверки подлинности SQL Server
Позволяет SQL Server поддерживать более старые приложения и приложения, поставляемые сторонними производителями, для которых необходима проверка подлинности SQL Server.
Позволяет SQL Server поддерживать среды с несколькими операционными системами, в которых пользователи не проходят проверку подлинности домена Windows.
Позволяет пользователям устанавливать соединения из неизвестных или ненадежных доменов. Например, в приложении, в котором клиенты подключаются с выделенными именами входа SQL Server, чтобы получить состояние их заказов.
Позволяет SQL Server поддерживать веб-приложения, в которых пользователи сами создают собственные удостоверения.
Позволяет разработчикам программного обеспечения распространять свои приложения с помощью сложной иерархии разрешений, основанной на известных, заранее установленных именах входа SQL Server.
Примечание Использование проверки подлинности SQL Server не ограничивает разрешения локальных администраторов на компьютере, на котором установлен SQL Server.