2016-12-06 168 views
0

我使用Visual Studio 2015更新3創建了ASP.NET核心應用程序。由Visual Studio嚮導生成的應用程序是使用菜單Build,發佈選項發佈的。我輸入了VS所要求的數據,並且該應用程序發佈在我的Azure帳戶中。將它發佈到Azure後無法登錄到本地ASP.NET應用程序

創建應用程序時,我選擇了「工作和學校帳戶」認證選項,這意味着我可以使用Azure/Office 365用戶帳戶登錄。

到目前爲止,它工作的很好,可以通過Azure提供的URL訪問該應用程序。

不過,現在,當我嘗試運行/調試在我的本地IIS Express中的應用程序,我在登錄時出現錯誤。錯誤顯示Microsoft's standard page。我得到的錯誤是:

對不起,但我們現在無法登入

我們收到了一個壞的請求。

附加技術信息: 相關ID:92884f38-BBFB-4dbb-8224-58ac95ff3cdc 時間戳:2016年12月6日06:17:02Z AADSTS70001:具有標識符申請書「5c8c803c-XXXX-XXXX-XXXX -XXXXXXXXXXXX」目錄7d3523a5-XXXX-XXXX-XXXX-XXXXXXXXXXXX

的5C GUID是指在Azure中我的應用程序客戶端ID沒有被發現,和7D GUID是指租戶ID。我查看了我的Azure租戶,並且Active Directory已註冊了我的應用程序。唯一的區別是URL指向myapp.azurewebsites.net,並且從本地IIS運行時,URL是localhost。

URL的這種區別有什麼關係嗎?我能做些什麼來解決這個問題?

這種類型的應用程序通常在無需發佈應用程序的情況下進行調試,而無需隨時進行更改?

+0

您需要在AzureAD兩個條目。一個用於您的本地應用程序,另一個用於您的實時應用程序並使用環境變量來覆蓋appsettings.json中設置的值。您只能設置一個返回網址,以便它可以是本地或您的生產域,但不能同時設置 – Tseng

+0

Hi @Tseng感謝您的意見。當你說兩個條目時,你是指兩個應用程序註冊?至於appsettings.json,每次我調試/發佈時,是否必須手動更改值,或者如果條件預處理(類似於#if DEBUG使用這些設置#else使用這些其他)是否有某種類型? –

+0

是的,兩個應用程序註冊。您可以將這些字段留空在appsettings.json中。開發使用用戶機密https://docs.microsoft.com/en-us/aspnet/core/security/app-secrets開發時使用'.UseEnvironmentVariables'並在Azure Portal中的Azure Web Service頁面中設置環境變量 – Tseng

回答

0

您必須將本地主機添加到您的應用程序在Azure中的回覆URL

到這裏看看: enter image description here

這裏:

enter image description here

+0

嗨@Dawid Rutkowski,感謝您的意見。我嘗試了你的建議,我添加了回覆URL,但它仍然不起作用。我需要更改我的應用或Azure中的其他任何內容嗎?再次感謝你! –

+0

如果您正確複製了所有GUID作爲例外消息「未在目錄中找到」可能表明應用標識符或租戶標識符錯誤,您可以再次檢查。 –

相關問題