Проверка подлинности Windows для ASP.NET API и сайта nodejs - PullRequest
0 голосов
/ 25 октября 2018

У меня есть веб-сайт, размещенный на 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, но я не могу понять,Выясни, что это такое.

1 Ответ

0 голосов
/ 26 октября 2018

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

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

...