0

我正在開發與開發,分期和藍綠色插槽的Azure應用程序。身份驗證由Azure AD處理,用戶重定向到microsoftonline登錄頁面。我昨天爲每個插槽下載了發佈配置文件,併發布了全部三個。我在多臺計算機和瀏覽器上測試了它們,並且所有三個插槽都正常工作。Azure AD Web應用程序與殭屍登錄重定向循環

今天早上我再次測試它們,並且只有開槽插槽有效。 Staging和bluegreen都重定向到登錄頁面,但一旦通過驗證,可怕的無限重定向循環就會接管。

該網站需要SSL,但這似乎與問題沒有關係。插槽工作時,通過HTTP或HTTPS訪問它們都可以正確重定向到HTTPS。

回覆URL也都設置好了,並且看起來與問題沒有關係。

我不知道接下來要看什麼。是否有定期運行的可能影響插槽的Azure進程?爲什麼插槽會工作幾個小時然後停止工作?


環路:(發送請求[應用] - [槽] .azurewebsites.net =>等待[應用] - [槽] .azurewebsites.net =>等待login.microsoftonline.com = >發送請求到[app] - [slot] .azurewebsites.net)等等。

+0

是你使用* *身份驗證/授權**或使用OpenID連接OWIN組件?你會介意分享URL請求循環?您可以使用Fiddler捕捉它。 –

+0

我們正在使用OpenIdConnect。 –

+0

您是否意味着在輸入正確的用戶名和密碼後,它會重新定向到登錄頁面而不是您在請求中傳遞的rediect_uri? –

回答

0

事實證明,這個問題是由微軟Owin的System.Web實現中的一個半知名的錯誤引起的:Katana Bug#197。甚至還有一個nuget包,其唯一目的是提供一種解決方法,直到bug被修復。截至2017年4月,Nuget軟件包已下載96,000次。

enter image description here

從readme.md爲Kentor.OwinCookieSaver NuGet包:

「的錯誤使得由Owin設置一些 場合神祕消失餅乾。」

該解決方法簡單易行。添加nuget軟件包Kentor.OwinCookieSaver,然後在您的cookie處理中間件之前添加KentorOwinCookieSaver中間件。在此之前,立即

app.UseKentorOwinCookieSaver(); 

添加此

app.UseCookieAuthentication(new CookieAuthenticationOptions()); 

如果你想了解更多,這裏有一些有用的鏈接: Owin Cookie Saver RepoKatana Project Bug #197

相關問題