Приложение MVC перенаправляет на страницу входа Microsoft (для Azure AD) вместо пользовательской страницы входа - PullRequest
1 голос
/ 03 мая 2019

Мое MVC приложение предназначено для загрузки страницы входа, которую я разработал вначале, с которой нужно нажать кнопку и только затем перенаправить на страницу входа Microsoft для аутентификации Azure AD.На моем локальном компьютере это работает, но не при публикации в Azure (Служба приложений), я изменил URL-адрес перенаправления, чтобы использовать xxxx.azurewebsites.net/Account/Login в Azure AD, но он по-прежнему перенаправляет на страницу входа Microsoft сначала.

ПРАВКА

Я понял, что перенаправленный URL-адрес, который я изменил, будет действовать только после аутентификации. Так что, если пользователь пройдет аутентификацию, он перенаправит на этот URL-адрес.

Что я сделал

Я создал службу приложения, опубликовал в ней свое приложение MVC, затем пошел в AAD и зарегистрировал там приложение.Когда я запускаю URL-адрес веб-сайтов Azure, он переходит прямо на страницу входа MS, однако, как уже упоминалось, на моем локальном компьютере он переходит прямо на страницу входа в систему, как и должно быть.URL перенаправления, который я изменил, был в AAD.Я не делал никаких других изменений в сервисе приложений. Я делаю что-то неправильно или что-то упустил?

Кто-нибудь сталкивался с этим раньше?

1 Ответ

0 голосов
/ 24 мая 2019

Итак, я, кажется, нашел проблему:

  1. Моя маршрутизация была установлена ​​на Home / Index в моем RouteConfig.cs, и я предположил, потому что я установил свою учетную запись / логин в качестве стартовой страницы, что она будет переходить на эту страницу (как это происходит на моем локальном), но это не тот случай, мне нужно было сменить маршрут на аккаунт / логин, чтобы он целевая страница.

    public static void RegisterRoutes(RouteCollection routes)
    {
        routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
        routes.LowercaseUrls = true;
        routes.MapRoute("Default", "{controller}/{action}/{id}", new
        {
            controller = "Account",
            action = "Login",
            id = UrlParameter.Optional
        }).RouteHandler = new DashRouteHandler();
    }
    
  2. Мне нужно было удалить атрибут [Authorize] из моей учетной записи / логина

Это заставило его сначала попасть на мою целевую страницу, и у меня есть функция входа, которая перенаправляет на страницу входа в MS для входа в Azure AD.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...