Перейти к основному содержимому

NTLM-аутентификация

Этот документ описывает, как настроить NTLM/Windows Integrated Authentication в YooLearn.

Обзор​


Интегрированная аутентификация Windows использует функции безопасности клиентов и серверов Windows. Она не запрашивает у пользователей имя пользователя и пароль. Текущая информация о пользователе Windows на клиентском компьютере предоставляется браузером через процесс аутентификации "вызов/ответ" с веб-сервером сайта YooLearn.

Предположения​


  1. Для аутентификации используется MS Active Directory.
  2. Сервер, на котором размещен ваш веб-сайт, является членом домена Active Directory, к которому также принадлежат ваши пользователи.
  3. Вы можете идентифицировать пользователей внутри вашей сети (аутентифицированных в домене) по диапазону IP-адресов компьютеров.
  4. Вы знакомы с документацией по LDAP-аутентификации или уже изучили ее.
  5. Учетные данные пользователей в домене Active Directory возвращаются в формате DOMAINNAME/usernam вашей службой аутентификации.
    • Если вы используете службу Winbind из проекта Samba, это условие может не выполняться в зависимости от настроек Winbind.
    • В Moodle 2.4 и более поздних версиях вы можете указать формат доменных учетных данных (см. ниже).
    • Если вы используете более старую версию и не можете изменить настройки для соответствия этому предположению, вам потребуется:
      • Удалить или закомментировать строку:
        $username = substr(strrchr($username, '//'), 1); //strip domain info
      • Добавить соответствующий код для извлечения имени пользователя из доменных учетных данных и сохранения его в переменной $username.

Очень важно:
Аутентификация NTLM зависит от LDAP-аутентификации, а ее настройки указываются на странице конфигурации LDAP:
"Администрирование" → "Плагины" → "Настройки аутентификации" → "Сервер LDAP".

Прежде чем настраивать NTLM, убедитесь, что LDAP-аутентификация правильно настроена и работает.

Установка​


Установка не требуется. Настройки NTLM можно найти в разделе "Администрирование" → "Плагины" → "Настройки аутентификации" → "Сервер LDAP". Вам необходимо выполнить следующие действия:

  1. Активировать NTLM SSO
  2. Указать IP/маску подсети для клиентов (см. ниже)
  3. (Опционально) Задать "Формат имени удалённого пользователя" в соответствии с форматом учётных данных вашего домена (см. ниже)

Настройка сервера

  • На IIS: включите Windows-аутентификацию.
  • На Apache: используйте один из 4 методов, описанных ниже.

Настройка клиентских ПК
Возможно, потребуется добавить IP-адрес или URL YooLearn (Moodle) в зону "Локальная интрасеть" (например, в Internet Explorer: "инструменты" → "параметры" → "безопасность" → "локальная интрасеть").

Важные условия для работы NTLM SSO

  • Вы перешли на страницу входа одним GET-запросом.
  • Включена опция ldap->ntlmsso_enabled.
  • Указана подсеть ldap->ntlmsso_subnet.
  • Пользователь не авторизован в системе.
  • IP-адрес клиента входит в указанную подсеть (ntlmsso_subnet).

Таким образом, необходимо правильно настроить подсеть IP.


Оригинал: https://docs.moodle.org/502/en/NTLM_authentication