我們開發了一個具有Azure Active Directory身份驗證的MVC5應用程序。當作爲Web應用程序部署到Azure時,一切正常。不過,我們已被要求部署爲雲服務。MVC5已發佈到Azure,因爲雲服務重定向到本地主機:登錄AD後有44300
創建一個新的雲服務項目,將MVC項目添加爲角色,將2個端點HTTP/HTTPS添加到雲服務。創建一個自簽名證書並應用於HTTPS端點。
本地調試
一切都運行在本地調試IIS Express和Azure計算模擬器的罰款。 初始請求指向http://localhost:7390(IISe http端口)。
重定向到Microsoft AD登錄然後重定向到https://localhost:4430(IISe https端口),並且在自簽名證書的預期證書警告之後主頁已正確顯示。
Azure的雲服務
應用爲被推到Azure中作爲雲服務的部署。
自簽名證書已上傳到Azure。
Azure的Active Directory中已經有一個條目添加的應用程序(使用雲服務發佈URL,如下圖所示),在URL
登錄:http://xxxxxxxxtest.cloudapp.net/
APP ID URI:http://xxxxxxxxtest.cloudapp.net/
回覆ULR :http://xxxxxxxxtest.cloudapp.net/
當按下網站http://xxxxxxxxtest.cloudapp.net/時,按預期重定向到Microsoft AD登錄,但在登錄成功後,我們被重定向到https://localhost:4430就好像它在本地測試環境中運行一樣。
完全卡在這一個!
TIA Martin。
請檢查重定向URL(https:// localhost:4430)是否已硬編碼您正在創建用於重定向到Azure AD以進行身份驗證的URL的應用程序。 –
在我們的主應用程序出現此問題後,我從頭創建了一個新的測試應用程序(具有單個Web角色MVC的雲服務 - 只是基本的默認索引頁面應用程序)。測試應用程序展示完全相同的問題。該測試應用程序使用我自己的MSDN Azure帳戶 - 在發佈雲服務之前,該帳戶完全乾淨。有沒有硬編碼的重定向,我可以在主要或測試應用程序的web.config中找到..這真的讓我感到困惑!僅發生4430位置是開發服務器的MVC項目的F4屬性SSL URL? – MartinS
嘗試在您的應用程序旁邊運行提琴手,以便驗證重定向來自何處。 我的第一個猜測也是Azure AD中的重定向URL。在身份驗證發生後,使用Azure AD重定向的提琴手進行檢查。這樣,如果它是Azure AD中的配置問題或MVC應用程序中存在問題,您可以指出這一點。 – kim