簡體   English   中英

在同一台服務器上具有Windows身份驗證的IIS反向代理獲得訪問被拒絕

[英]IIS reverse proxy with windows authentication on same server getting access denied

我在這里查看了一些其他的帶有Windows身份驗證帖子的IIS反向代理,它們似乎不是我要嘗試的。 希望有人能夠幫助或發現我沒有在做什么或做錯了什么。

我有一台服務器,該服務器的網站在端口80上運行,我需要在該網站上展示許多其他Web應用程序。 我無法創建新的主機名,因此我在指向我的Web應用程序的站點中創建了一個虛擬目錄,但是根站點正在使用.net2.0應用程序池,該池必須保持為.net2.0,而我的ASP.NET MVC應用程序都需要4.0個應用程序池。 根據web.config繼承問題,這不起作用,並且我無法更改根目錄中的web.config以忽略傳播到子級web.configs-到目前為止,對於我來說? ;-)

簡而言之,我現在在我的端口80站點中有一個虛擬目錄,該目錄充當對端口81上另一個站點的反向代理,對於匿名連接來說,這很好用。 我已經用一個簡單的HTML頁面對其進行了測試,並且可以訪問它,並且URL重寫正在HTML頁面中的鏈接上進行,到目前為止一切正常。

現在,我需要在端口81站點上啟用Windows身份驗證,因此我按照與MSDN站點上這些鏈接類似的說明,為我正在使用的域帳戶(DOMAIN \\ testaccount)和其他IIS配置的SPN進行配置:

鏈接1 鏈接2

問題是我現在得到的只是很好的舊錯誤消息:

訪問被拒絕。 說明:訪問服務於此請求所需的資源時發生錯誤。 可能未將服務器配置為訪問請求的URL。

錯誤消息401.2 ::未經授權:由於服務器配置,登錄失敗。 根據您提供的憑據和Web服務器上啟用的身份驗證方法,驗證您是否有權查看此目錄或頁面。 請與Web服務器的管理員聯系以獲取其他幫助。

-------------------------------------------------- ------------------------------版本信息:Microsoft .NET Framework版本:4.0.30319; ASP.NET版本:4.0.30319.34280

我嘗試創建一個測試aspx頁面,該頁面僅將服務器變量輸出到響應,但即使這樣也不起作用。

我找不到其他嘗試,起初我以為必須對Kerberos進行排序才能將詳細信息從虛擬目錄傳遞到端口81上的站點,但是MSDN帖子說這不是必需的,只是SPN。

有任何想法嗎?

事實證明這很簡單,我因為不檢查而變得愚蠢! :-)

我花了幾天的時間來弄清楚為什么它不起作用,不確定為什么我沒有更早嘗試,但是我更改了正在運行的應用程序池以使用.net2.0,然后我的測試aspx頁面起作用了!

如果您在根服務器節點上單擊“ ISAPI和CGI限制”功能設置下將.net4.0 DLL設置為“不允許”,但將.net2.0 DLL設置為“允許”的根服務器節點本身,則會在IIS管理器中出現! 我剛剛啟用了.net4.0,將應用程序池改回了,然后它就起作用了。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM