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

  • Вопрос

  • Есть программа документооборота DocsVision. Клиент-серверная.  Серверная часть реализована с использованием IIS (6.0).
    На нескольких рабочих местах (Windows XP SP2) при попытке обращения к сайту:
    http://<SERVER>/DocsVision/StorageServer/StorageServerService.asmx

    возникает ошибка: Не удалось установить соединение с сервером, отказано в доступе.

    Переустановка клиента программы, очистка временных файлов IE не помогает.
    Если этим же пользователем зайти на другом компьютере - работает.
    Если другим пользователем зайти на этом компьютере -
    работает.
    Если снести профиль и создать заново - то тоже всё начинает работать.
     
    С отключённой NTLM-аутентификацией тоже работает.
    (http://<SERVER>/docsvision/?disablentlm=1)
    Опция аутентификации в IE установлена следующим образом:

    http://img91.imageshack.us/img91/6099/72569217uk2.jpg

    Сервер http://<SERVER>  внесен в "Надёжные узлы".


    Видимо, что-то в профиле пользователя, но вот что и как это поправить не удаляя профиля?


    Были также выполнены след. действия:

    1) Рекомендации статьи:
    http://support.microsoft.com/kb/322822


    2)
    1. Start Internet Explorer.
    2. Click Tools, click Internet Options, and then click the Advanced tab.
    3. Under Security, click to de-select Enable Integrated Windows Authentication (requires restart), and then click Apply.
    4. Close Internet Explorer.


    3)

    Note that there is a registry key that will instruct IE to stop initiating NTLMSSP unless instructed by the server.

    Type: DWORD
    Key: HKEY_CURRENT_USER/Software/Microsoft/Windows/CurrentVersion/Internet Settings/DisableNTLMPreAuth
    Value: 1

    Релогон

    4) грохали ветки:

    HKEY_CURRENT_USER/Software/Microsoft/Windows/CurrentVersion/Internet Settings
    HKEY_CURRENT_USER/Software/Microsoft/Internet Explorer


    При этом, если зайти из-под проблемного профиля по ссылке:
    http://<SERVER>/DocsVision/StorageServer/StorageServerService.asmx

    То вылезает окно аутентификации. А вообще не должно... При этом в поле логин внесёно имя в
    след формате: <SERVER>\<username>. Такого пользователя не существует...
    Есть только <DOMAINNAME>\<username>.

    То есть, не передаётся доменная часть Sad
    Непонятно как это исправить.

    В логе IIS следующее:

    2009-02-03 08:20:10 W3SVC1 192.168.0.150 POST /DocsVision/StorageServer/StorageServerService.asmx - 80 - 192.168.0.47 DVHttpClient 401 2 2148074254
    2009-02-03 08:20:10 W3SVC1 192.168.0.150 POST /DocsVision/StorageServer/StorageServerService.asmx - 80 - 192.168.0.47 DVHttpClient 401 1 0
    2009-02-03 08:20:10 W3SVC1 192.168.0.150 POST /DocsVision/StorageServer/StorageServerService.asmx - 80 - 192.168.0.47 DVHttpClient 401 1 2148074252

    Пробовали также полностью сбрасывать настройки IE (Internet Options -> Advanced -> Reset). Не помогло...
    Также обновили IE c 6.0 до 7.0


    Всё-таки не может быть, чтобы имя пользователя отсылалось без домена...
    Если юзер под доменной учёткой вошёл в сеть, то он для получения доступа к ресурсам отправляет серверу хэш...
    Не может де IE сам этот хэш выдумывать при NTLM-аутентификации. Значит хэш правильный. Доступ же он к сетевым ресурсам нормально получает.
    Т.е. глюк в чём-то другом...


    При этом, похоже дело даже не в IE, так как сторонняя, использующая API системы утилита, тоже подцепиться не может, используя NTLM Auth.
    http://img7.imageshack.us/img7/4787/75189531qa4.jpg

    Если явно ввести логин-пароль, то всё проходит.


    P.S. Похоже что глюк появился после установки сервис-паков на .NET Framework (2, 3, 3.5).... По крайней мере, глобального больше ничего не происходило.



    11 февраля 2009 г. 2:31

Ответы

  • Вопрос закрыт. Пересоздали профиль.
    Ошибка почему-то всё равно появилась, но после установки ключа:

    Type: DWORD
    Key: HKEY_CURRENT_USER/Software/Microsoft/Windows/CurrentVersion/Internet Settings/DisableNTLMPreAuth
    Value: 1

    Всё заработало.
    В логах на клиентской машине ничего не было подозрительного. На серваке вроде тоже смотрели, но точно не помню.
    Не в моей сетке было, а у клиента.

    Если бы у меня такое произошло, то я бы-таки выследил проблему постепенно удаляя папки из профиля.
    • Помечено в качестве ответа Shakalov Andrey 12 февраля 2009 г. 11:57
    12 февраля 2009 г. 11:56

Все ответы

  • Нет ли ошибок в журнале с источником usernv?  Какие вообще есть ошибки на "проблемных" компьютерах.
    lokise
    12 февраля 2009 г. 5:17
  • Вопрос закрыт. Пересоздали профиль.
    Ошибка почему-то всё равно появилась, но после установки ключа:

    Type: DWORD
    Key: HKEY_CURRENT_USER/Software/Microsoft/Windows/CurrentVersion/Internet Settings/DisableNTLMPreAuth
    Value: 1

    Всё заработало.
    В логах на клиентской машине ничего не было подозрительного. На серваке вроде тоже смотрели, но точно не помню.
    Не в моей сетке было, а у клиента.

    Если бы у меня такое произошло, то я бы-таки выследил проблему постепенно удаляя папки из профиля.
    • Помечено в качестве ответа Shakalov Andrey 12 февраля 2009 г. 11:57
    12 февраля 2009 г. 11:56