В приложении ASP.NET MVC 5, как заставить пользователя войти в систему, если он пытается получить доступ к защищенной странице без входа в систему - PullRequest
0 голосов
/ 29 октября 2018

В соответствии с дизайном приложения нам не нужно хранить информацию о пользователях / ролях в нашей базе данных.

Я ввожу свой идентификатор сотрудника и выбираю RATES_AMAR_ANALYST из раскрывающегося списка профиля.

Поскольку я выбрал RATES_AMAR_ANALYST из раскрывающегося списка профиля, моя роль - ANALYST.

Я использую FormsAuthentication для обеспечения функциональности входа в систему, выхода из системы.

Ниже приведен код, написанный в функциональности LogOff.

public ActionResult LogOff(string returnUrl = "")
{
    FormsAuthentication.SignOut();
    Session.Abandon();
    return RedirectToAction("Login", "Account");
}

Я написал AuthorizeAttribute для некоторых бизнес-требований. Следовательно, зарегистрировано то же самое в FilterConfig.cs файле, как показано ниже.

public static void RegisterGlobalFilters(GlobalFilterCollection filters)
{
    filters.Add(new HandleErrorAttribute());
    filters.Add(new SOCOAuthorizeAttribute(string.Empty));
}

Я включил следующий параметр в файл Web.config для включения проверки подлинности с помощью форм.

<authentication mode="Forms">
  <forms loginUrl="~/Account/Login" timeout="2" slidingExpiration="true" enableCrossAppRedirects="false" protection="All"></forms>
</authentication>

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

enter image description here

Может кто-нибудь предложить мне, как выполнить мою работу!

...