Я продолжаю чью-то разработку, И я мало знаю о текущих методах аутентификации в приложениях MVC.
Единственное, что настроено для аутентификации, находится в конфигурации IIS приложения:
- Правила аутентификации .NET = Разрешить, Все пользователи
Аутентификация:
- Анонимная аутентификация: включена
- Олицетворение ASP .NET: отключено
- Аутентификация Windows: включена
При такой конфигурации на сервере браузер запрашивает у меня логин/пароль. Ввожу свой сетевой логин. Затем я могу идентифицировать пользователя с помощью 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();
--> Сеанс нулевой, поэтому ничего не делает.
Итак, как я могу выйти из системы, чтобы повторно войти в систему как другой пользователь?
(Я также хотел бы иметь возможность идентифицировать пользователя на локальном компьютере, но я думаю, что это следует спросить в другой теме.)