[英]Windows authentication for ASP.NET API and nodejs website
我有一個使用http-proxy-middleware托管在nodejs上的網站,在該網站中,我將所有api調用代理到ASP.NET API。
我將ASP.NET api部署在遠程IIS服務器(不在我的計算機上,而是在域中)上,並且僅使用NTLM進行Windows身份驗證,並且在web.config
具有此功能:
<system.web>
<compilation debug="true" targetFramework="4.5.2" />
<httpRuntime targetFramework="4.5.2" />
<authentication mode="Windows" />
</system.web>
當我在本地IIS服務器上(在我的計算機上)設置我的網站並將其身份驗證設置為匿名時,這可以正常工作,沒有任何登錄彈出窗口。
使用NTLM身份驗證從郵遞員調用api也可以正常工作。
但是,當我將網站部署到遠程IIS服務器時,我可以毫無問題地打開網站,但是當網站查詢API時,我得到一個不接受我的憑據的登錄彈出窗口( mydomain\\myusername
),它將再次顯示該彈出窗口,並且再次在Chrome中運行,但在IE中嘗試3次並返回401未經授權的錯誤后停止。
因為這在本地可行,所以我認為問題一定在IIS服務器上,但是我無法弄清楚它是什么。
IIS服務器存在問題,嘗試解決此問題時,我經常在匿名身份驗證和Windows身份驗證之間切換,但所做的更改無法工作,除非我隨后通過在命令控制台中編寫iisreset /noforce
來重新啟動IIS
通過在遠程IIS上執行此操作,可以像在本地IIS上那樣進行工作。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.