0

我正在嘗試協助客戶端項目上的FormsAuthentication有一個有趣的問題。這裏的問題:FormsAuthentication未能在更改域後進行身份驗證

  • Web應用程序的域從.companyA.com改爲.companyB.com和我建立了一個IIS重定向到派任何人試圖去.companyA.com到.companyB。 COM。這工作得很好。

  • 現在我無法登錄該網站。我做了一些挖掘,發現在web.config中定義了authCookies,所以我更改了authCookie域以匹配.companyB.com。我仍然無法登錄。

  • 我做了一些更多的挖掘,發現有一個SQL報告服務器設置。我在報告服務器的配置文件中更改了域以匹配.companyB.com。仍然無法登錄。

對於這種類型的問題的一般故障排除是否有其他地方我可以看?我剛剛被視爲交火,所以我限制了領域知識,無法在VS中打開解決方案,因爲他們提供的唯一VS對於解決方案來說太舊了。

編輯:好的,進一步挖掘後,我發現用戶不認證不是主要問題。連接到報告服務數據庫時出現問題,正在吞噬異常。謝天謝地,它出現在事件查看器中。不幸的是,這仍然給我帶來了問題,我無法弄清楚爲什麼SQL不再認證我,以及如何更改域名可能導致這種情況。

+0

您認證哪個網站?在更改web.config中的域後,Cookie域是否更改? – CoderMarkus

+0

我更改了web.config中的cookie域。我不確定這是否需要在別處改變。當前在網站上創建的Cookie都具有正確的域名。 – cledfo

回答

0

調試非常簡單。只要得到任何http調試器(Fiddler會做)並運行你的應用程序。你會看到一個請求列表。請注意設置auth cookie的響應,然後在連續請求中發生什麼。

您可能會看到該Cookie已設置,但未完成。這可能是因爲cookie是針對域A發佈的(您將在調試器中看到cookie的域),並且瀏覽器未將其發送到域B(瀏覽器應該這樣做;它不會將cookie帶到其他域)。

無論如何,一個http調試器將在這裏很有幫助。

+0

我正在使用螢火蟲查看回復。有一個會話cookie僅被創建,但它具有正確的域。似乎authCookie沒有被創建,這是沒有意義的,因爲我從來沒有改變任何邏輯。 – cledfo

+0

我不知道什麼螢火蟲表演。要100%確定,請使用Fiddler。 –

+0

看起來它甚至沒有達到可以設置authCookie的程度。我想這是特定領域的,我必須自己弄明白。 – cledfo

相關問題