ASP.NET MVC 5: настраиваемый URL-адрес для входа на основе локализованного параметра маршрута

В ASP.NET MVC 5 вы указываете URL-адрес пути входа в метод ConfigureAuth(...), который вызывается из Application_Start():

app.UseCookieAuthentication(new CookieAuthenticationOptions
{
    AuthenticationType = DefaultAuthenticationTypes.ApplicationCookie,
    LoginPath = new PathString("/Account/Login")
});

Мне нужно каким-то образом указать путь входа в систему в соответствии с параметром локализованного маршрута.

Один из способов, который я имею в виду, - перенаправить пользователя в Application_AuthenticateRequest() на нужную страницу входа в случае, если Request.IsAuthenticated ложно. Но я не совсем уверен, хорошая это идея или нет.


person Lafi    schedule 06.02.2014    source источник


Ответы (1)


Используя OWIN, вы не можете использовать модель программирования IIS Application_AuthenticateRequest. Вы должны принять модель программирования OWIN.

Во всяком случае, в CookieAuthenticationOptions есть свойство Provider. Здесь есть событие ApplyRedirect, которое вы можете обработать. Там вы можете изменить URL-адрес перенаправления.

person Brock Allen    schedule 06.02.2014
comment
См. этот вопрос для получения дополнительной информации о том, как реализовать ApplyRedirect: MVC 5 Как определить Owin LoginPath с локализованными маршрутами - person Richard; 05.11.2014