Я продолжаю чужую разработку. Я мало знаю о текущей практике аутентификации в приложениях MVC.Выход из приложения MVC4
Единственные вещи, которые установлены об аутентификации в конфигурации IIS приложения:
- .NET Правила Authrization = Разрешить Все пользователи
Аутентификация:
- Анонимная проверка подлинности : Enabled
- ASP.NET олицетворение: отключено
- проверка подлинности Windows: Enabled
При такой конфигурации на сервере, браузер просит у меня логин/пароль. Я вхожу в мой сетевой логин. Тогда я могу идентифицировать пользователя с помощью Request.RequestContext.HttpContext.User.Identity...
На локальном компьютере где я войти, используя один и тот же логин/пароль: ни один пользователь не вошел в приложение (Request.RequestContext.HttpContext.User.Identity.Name == ""). Если я отключу анонимную аутентификацию, браузер просто будет бесконечно запрашивать пароль для входа.
Моя первая проблема заключается в том, что я хотел бы иметь возможность выхода на сервер. Из-за короткой информации, которую я получил здесь и там, я уже пробовал: FormsAuthentication.SignOut();
-> ничего не делает WebMatrix.WebData.WebSecurity.Logout();
-> Исключение, пытается получить доступ к базе данных (я получил это от одного из шаблонов VS2012, но я не думал, что это будет применяться к моему контексту). if(this.Request.RequestContext.HttpContext.Session != null) this.Request.RequestContext.HttpContext.Session.Clear();
-> Сессия имеет значение null, поэтому ничего не делает.
Итак, как я могу выйти из системы, чтобы переуступить как другой пользователь?
(я также хотел бы быть в состоянии идентифицировать пользователя на локальном компьютере, но я думаю, что должно быть предложено в другой теме.)
Спасибо за ответ но если вы прочтете мой пост, вы увидите, что я попробовал оба (отдельно и вместе). – TTT
@TTT Действительно, вы оба использовали их вместе? - Как правило, в MVC с проверкой подлинности форм вы должны выйти из системы согласно вышеописанному методу –
Как упоминалось в моем предыдущем комментарии, я пробовал отдельно И Я пробовал оба вместе). – TTT