Поделиться через


Установите пользовательскую политику паролей для входов SQL в SQL Server на Linux

Применимо к: Предварительная версия SQL Server 2025 (17.x) — Linux

В этой статье описывается, как настроить политики паролей для входа в SQL Server в Linux и управлять ими.

Политики паролей являются важным аспектом защиты любой среды базы данных. Они обеспечивают выполнение:

  • Сложность
  • Истечение срока действия
  • Изменения

Это гарантирует, что имена входа, использующие проверку подлинности SQL Server, защищены.

Замечание

Политики паролей доступны в Windows. Дополнительные сведения см. в разделе Политика паролей.

Настраиваемые параметры политики

Начиная с предварительной версии SQL Server 2025 (17.x) в Linux, можно задать следующие параметры конфигурации в mssql.conf файле, чтобы применить настраиваемую политику паролей.

Параметр конфигурации Описание
passwordpolicy.passwordminimumlength Определяет минимальное количество символов, необходимых для пароля. Пароли могут содержать до 128 символов.
passwordpolicy.passwordhistorylength Определяет количество предыдущих паролей, которые необходимо помнить.
passwordpolicy.passwordminimumage Указывает минимальную продолжительность ожидания пользователя, прежде чем снова изменить пароль.
passwordpolicy.passwordmaximumage Задает максимальную длительность, которую можно использовать перед изменением пароля.

Замечание

В настоящее время passwordminimumlength можно задать менее восьми символов. Пароль должен соответствовать политике паролей по умолчанию SQL Server. По умолчанию пароль должен содержать по крайней мере восемь символов и содержать символы из трех из следующих четырех наборов: прописные буквы, строчные буквы, цифры base-10 и символы. Пароли могут иметь длину до 128 символов. Используйте пароли, которые являются максимально длинными и сложными.

Существуют два способа настройки пользовательских политик паролей для имен входа SQL-аутентификации в SQL Server на Linux:

Настройка настраиваемой политики паролей с adutil

В средах, где управление политиками централизованно находится на сервере Active Directory (AD), администраторы домена могут задавать и изменять значения политики паролей на сервере AD. Кроме того, компьютер Linux под управлением SQL Server также должен быть частью домена Windows.

Используйте adutil , чтобы получить политику паролей с сервера AD и записать ее в mssql.conf файл. Этот метод обеспечивает преимущество централизованного управления и обеспечивает согласованное применение политик в среде SQL Server.

Требования к adutil

  1. Установить аутентифицированный Kerberos сеанс

    • Выполните команду kinit , sudo чтобы получить или продлить билет на предоставление билетов Kerberos (TGT).

    • Для выполнения команды kinit используйте привилегированную учетную запись. Учетная запись должна иметь разрешение на подключение к домену.

    В следующем примере замените <user> на учетную запись с повышенными привилегиями в домене.

    sudo kinit <user>@CONTOSO.COM
    
  2. Убедитесь, что билет предоставлен:

    sudo klist
    
  3. Чтобы обновить политику паролей, сделайте запрос к домену, используя 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.

  4. Перезапустите службу SQL Server:

    sudo systemctl restart mssql-server
    

Настройка настраиваемой политики паролей с помощью mssql-conf вручную

Политику пароля для входа по проверке подлинности SQL можно задать, обновив параметры в файле mssql.conf с помощью mssql-conf. Этот подход обеспечивает простоту и прямой контроль над параметрами политики.

Используйте этот метод, если узел Linux, на котором выполняется SQL Server, не является частью домена, и контроллер домена не получает политики паролей.

Выполните следующие команды mssql-conf , чтобы задать каждое свойство конфигурации политики.

  1. Установите минимальную длину пароля в 14 символов, соответствуя требованиям сложности, изложенным в политике паролей.

    sudo /opt/mssql/bin/mssql-conf set passwordpolicy.minimumpasswordlength 14
    
  2. Задайте минимальный срок действия пароля в один день. Пользователи могут изменить пароль через один день.

    sudo /opt/mssql/bin/mssql-conf set passwordpolicy.passwordminimumage 1
    
  3. Установите длину истории паролей на 8. Пользователи должны использовать восемь уникальных паролей, прежде чем повторно использовать старый.

    sudo /opt/mssql/bin/mssql-conf set passwordpolicy.passwordhistorylength 8
    
  4. Задайте максимальный срок действия пароля: 45 дней. Пользователь может использовать пароль до 45 дней до того, как пользователь должен изменить его.

    sudo /opt/mssql/bin/mssql-conf set passwordpolicy.passwordmaximumage 45
    
  5. Перезапустите службу SQL Server.

    sudo systemctl restart mssql-server
    

Ограничения

В настоящее время minimumpasswordlength нельзя задать более 14 символов.

После обновления групповой политики паролей в Active Directory необходимо вручную выполнить adutil updatepasswordpolicy команду для обновления mssql.conf. Эта команда не выполняется автоматически. Убедитесь, что компьютер Linux под управлением SQL Server является частью домена или вручную установите его с помощью mssql-conf.

В Active Directory каждая политика паролей на уровне группы может быть определена или не определена с помощью флажка.

Снимок экрана: параметр политики безопасности минимальной длины пароля.

Однако отмена проверки политики не отключает ее в SQL Server в Linux. Чтобы избежать применения пользовательской политики паролей, обновите параметры в mssql-conf вместо того, чтобы использовать флажок.