angle-left

Проблема с NTLM аутентификацией

Некоторое время назад у нашего заказчика возникла проблема с NTLM аутентификацией на внедренном портале на базе Liferay.


Описание проблемы

Проблема заключалась в нефункционировании NTLM аутентификации на портале по FQDN, при этом, экспериментально было обнаружено, что при использовании короткого имени NTLM аутентификация успешно отрабатывает.

В процессе анализа заголовков запросов со стороны клиента было обнаружено, что при использовании FQDN клиент не пытается пройти аутентификации NTLM, тогда как при использовании короткого имени или ip-адресса происходила передача всех необходимых параметров и заголовков, в частности NTLM токен
 

Authorization: NTLM T2RMTVNTUAABAAAAB4IIogAAAAAAAAAAAAAAAAAAAAAGA4AlAAAADw==

 

Причины и путь решенния проблемы

Причины заключались в некорректной настройке браузера для работы с порталом:

  1. Ресурс по FQDN https://resourse.domain не определялся автоматически как ресурс интрасети. В явном виде в инфраструктуре не задано правило принадлежности ресурса к интрасети (например *.domain). Ресурс по короткому имени браузер автоматически относил к принадлежности интрасети.
    настройки для работы NTLM с ресурсами интрасети
    Соответственно, при этом не применялись параметры разрешающие браузеру производить аутентификацию NTLM (Автоматический вход в сеть только в зоне интрасети).
    Настройки безопасности браузера для работы NTLM
  2. Вторая причина заключалась в отображении ресурса в режиме совместимости браузера Internet Explorer. Без включенного режима совместимости браузер представляется порталу как Mozilla на платформе Trident.
    Портал по причинам безопасности (в частности, общий кеш в Mozilla) не предоставлял возможность NTLM аутентификации. По умолчанию для зоны интрасети режим совместимости был включен, о чем свидетельствует работоспособность по короткому имени.

Решение

Оптимальным решением проблемы является добавление в групповую политику домена ресурсов *.domain как ресурсов интрасети.