Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Применимо к: SQL Server 2022 (16.x) и более поздних версий в Linux
В этой статье описывается, как настраивать и управлять политиками паролей для логинов SQL Server на Linux. Пользовательские политики паролей доступны начиная с SQL Server 2022 (16.x) накопительного обновления (CU) 23 и SQL Server 2025 (17.x).
Политики паролей применяют правила для сложности, истечения срока действия и изменений, которые помогают обеспечить безопасность входа SQL Server.
Note
Политики паролей также доступны в Windows. Дополнительные сведения см. в разделе "Политика паролей".
Это гарантирует, что имена входа, использующие проверку подлинности SQL Server, защищены.
Настраиваемые параметры политики
Задайте в файле следующие параметры mssql.conf конфигурации, чтобы применить настраиваемую политику паролей:
| Параметр конфигурации | Description |
|---|---|
passwordpolicy.passwordminimumlength |
Задает минимальное количество символов, необходимых для пароля. Пароли могут иметь длину до 128 символов. |
passwordpolicy.passwordhistorylength |
Задает количество предыдущих паролей, которые система запоминает. |
passwordpolicy.passwordminimumage |
Устанавливает минимальное время ожидания перед тем, как пользователь сможет снова изменить свой пароль. |
passwordpolicy.passwordmaximumage |
Задает максимальную длительность, которую можно использовать перед изменением пароля. |
Note
В настоящее время можно задать passwordminimumlength значение, состоящее из менее чем восьми символов. Пароль должен соответствовать политике паролей по умолчанию SQL Server. По умолчанию пароль должен быть не короче восьми символов и содержать три вида символов из следующих: прописные буквы, строчные буквы, десятичные цифры, специальные символы. Пароли могут иметь длину до 128 символов. Рекомендуется использовать максимально длинные и сложные пароли.
Настройте политику одним из двух способов:
- Установите политику с помощью adutil, который извлекает значения из Active Directory.
- Установите политику вручную с помощью mssql-conf.
Настройка настраиваемой политики паролей с adutil
В средах, где управление политиками централизованно находится на сервере Active Directory (AD), администраторы домена задают и изменяют значения политики паролей на сервере AD. Компьютер Linux под управлением SQL Server также должен быть частью домена Windows.
Используйте adutil , чтобы получить политику паролей с сервера AD и записать ее в mssql.conf файл. Этот метод обеспечивает преимущество централизованного управления и обеспечивает согласованное применение политик в среде SQL Server.
Требования к adutil
Установите сеанс Kerberos, прошедший проверку подлинности:
Выполните команду
kinit,sudoчтобы получить или продлить билет На предоставление билетов Kerberos (TGT).Для выполнения команды
kinitиспользуйте привилегированную учетную запись. Учетная запись должна иметь разрешение на подключение к домену.
В следующем примере замените
<user>на учетную запись с повышенными привилегиями в домене.sudo kinit <user>@CONTOSO.COMУбедитесь, что билет предоставлен:
sudo klistЧтобы обновить политику паролей, выполните запрос к домену с помощью
adutil:sudo adutil updatepasswordpolicyЕсли команда выполнена успешно, выходные данные выглядят примерно так:
Successfully updated password policy in mssqlconf. Restart SQL Server to apply the changes.При необходимости можно добавить
--pathпараметр в предыдущую команду. Этот параметр можно использовать, если у вас есть инструментmssql-confв другом расположении, чем путь по умолчанию. По умолчанию используется путь/opt/mssql/bin/mssql-conf.Перезапустите службу SQL Server:
sudo systemctl restart mssql-server
Вручную задайте настраиваемую политику паролей с помощью mssql-conf
Обновите параметры политики mssql.conf напрямую, используя mssql-conf. Используйте этот метод, если узел Linux не присоединен к домену или если контроллер домена недоступен для источника политики.
Выполните следующие mssql-conf команды, чтобы задать каждое свойство политики.
Задайте минимальную длину пароля 14 символов, а также требования к сложности, описанные в политике паролей.
sudo /opt/mssql/bin/mssql-conf set passwordpolicy.passwordminimumlength 14Задайте минимальный срок действия пароля в один день. Пользователи могут изменить пароль через один день.
sudo /opt/mssql/bin/mssql-conf set passwordpolicy.passwordminimumage 1Установите длину истории паролей на 8. Пользователи должны использовать восемь уникальных паролей, прежде чем повторно использовать старый.
sudo /opt/mssql/bin/mssql-conf set passwordpolicy.passwordhistorylength 8Задайте максимальный возраст пароля 45 дней. Пользователь может использовать пароль до 45 дней до того, как пользователь должен изменить его.
sudo /opt/mssql/bin/mssql-conf set passwordpolicy.passwordmaximumage 45Примените изменения.
В SQL Server 2022 (16.x) CU 23 и более поздних версий, а также в SQL Server 2025 (17.x) CU 3 и более поздних версий перезагрузите
mssql.confбез перезапуска службы. Подключитесь к экземпляру SQL Server и выполните следующую команду:EXECUTE sp_reload_mssqlconf;Или, в более ранних версиях, перезапустите службу SQL Server вместо этого:
sudo systemctl restart mssql-server
Ограничения
До SQL Server 2022 (16.x) CU 23 и SQL Server 2025 (17.x) CU 3 параметр passwordminimumlength нельзя задать более 14 символов.
Изменения групповой политики паролей в Active Directory не распространяют автоматически. Выполните adutil updatepasswordpolicy, чтобы обновить mssql.conf после каждого изменения, или задайте значения вручную, используя mssql-conf, если узел Linux не присоединен к домену.
В Active Directory можно определить или отменить настройку каждой политики паролей на уровне группы с помощью флажка:
Очистка флажка не отключает политику в SQL Server на Linux. Чтобы остановить принудительное применение значения, обновите его непосредственно в mssql-conf.