Аутентификация Windows для ASP.NET API и веб-сайта nodejs

У меня есть веб-сайт, размещенный на nodejs, с использованием http-proxy-middleware, где я проксирую все вызовы API для API ASP.NET.

У меня есть API ASP.NET, развернутый на удаленном сервере IIS (не на моем компьютере, а в домене) с аутентификацией Windows только с NTLM, и у меня есть это в web.config:

<system.web>
    <compilation debug="true" targetFramework="4.5.2" />
    <httpRuntime targetFramework="4.5.2" />
    <authentication mode="Windows" /> 
</system.web>

Когда я настраиваю свой веб-сайт на локальном сервере IIS (на своем компьютере) и устанавливаю для него анонимную аутентификацию, это работает правильно, без всплывающих окон для входа.

Вызов API из почтальона с аутентификацией NTLM также работает отлично.

Но когда я развертываю веб-сайт на удаленном сервере IIS, я могу открыть сайт без проблем, но когда сайт запрашивает API, я получаю всплывающее окно для входа в систему, которое не принимает мои учетные данные (mydomain\myusername), вместо этого оно будет снова и снова показывать всплывающее окно в chrome, но остановится после 3 попыток в IE и вернет 401 несанкционированную ошибку.

Поскольку это работает локально, я думаю, что проблема должна быть где-то с сервером IIS, но я не могу понять, что это такое.


person Treebeard    schedule 25.10.2018    source источник


Ответы (1)


Была проблема с сервером IIS, при попытке решить проблему я часто переключался между анонимной аутентификацией и аутентификацией Windows, но изменения не работали, если я не перезапустил IIS, написав iisreset /noforce в командной консоли после этого

Делая это на удаленном IIS, он работал так же, как и на моем локальном IIS.

person Treebeard    schedule 26.10.2018