ASP.NET Core Web App с URL-адресом ответа Azure AD, указанным в запросе, не соответствует настроенным URL-адресам ответа - PullRequest
1 голос
/ 15 мая 2019

Я пытаюсь работать с ASP.NET Core 2.1 и защищаю веб-приложение с помощью Azure AD.У меня есть следующие настройки приложения:

{
  "AzureAd": {
    "Instance": "https://login.microsoftonline.com/",
    "Domain": "xxxx.onmicrosoft.com",
    "ClientId": "xxxxx",
    "TenantId": "xxxxx",
    "ClientSecret": "xxxxx",
    "CallbackPath": "/signin-oidc"
  },
  "Logging": {
    "LogLevel": {
      "Default": "Warning"
    }
  },
  "AllowedHosts": "*"
}

(обратите внимание на callbackPath).Это согласно документации, которую я мог найти.Когда я в последний раз работал с аутентификацией Azure AD, я использовал URL-адрес ответа в настройках приложения, и он должен был соответствовать URL-адресу ответа в Azure AD.Однако документация для этого более нового метода говорит, что у вас должен быть путь обратного вызова как / signin-oidc?

Я не совсем понимаю, но я установил это таким образом, однако я не могу установить URL ответа в Azure AD Application Registration, так как он не принимает этот «частичный» путь,Это должен быть полный URL.Я пробовал:

  • mysite.net (с callbackPath как mysite.net)
  • mysite.net / index (с CallbackPath как / index)
  • mysite.net / signin-oidc (с CallbackPath как / signin-oidc "

Но я постоянно получаю URL-адрес ошибки, указанный в запросе, не совпадает с URL-адресами ответа, настроенными для входа после ввода учетных данныхкогда возникает проблема, и я получаю страницу входа в Microsoft.

Когда я последний раз выполнял аутентификацию Azure AD с веб-формами ASP.NET, это был просто app.config с mysite.net в качестве URL-адреса ответа и регистрацией приложения.в Azure как mysite.net

1 Ответ

2 голосов
/ 15 мая 2019

Раствор в 2-х частях:

Часть 1. Убедитесь, что CallBackUrl в appsettings.json - это / signin-oidc, а в приложении Azure регистрация - это ваш / signin-oidc

Часть 2. Убедитесь, что вы добавили app.UseAuthentication () в свой конвейер HTTP в startup.cs

...