Как уничтожить сеанс другого, чем текущий пользователь в asp.net - PullRequest
0 голосов
/ 19 июля 2010

Я использую asp.net 4.0 с asp.net MVC 2.0 и провайдером членства asp.net.

Мне нужно прервать сеанс пользователя, прежде чем я его удалю. В противном случае, если пользователь все еще проходит проверку подлинности в следующий раз, когда он посетит страницу, при попытке доступа к данным и профилю пользователя будут возникать нулевые ссылки.

Я получаю метод Session.Abandon (), но я ищу то же самое для пользователя, что-то вроде user.AbandonSessions ().

Я понимаю, что этот вопрос уже задавался, но я не могу получить прямой ответ.

Спасибо

Ответы [ 3 ]

1 голос
/ 20 июля 2010

Я думаю, что вы можете наклониться на ветряные мельницы.Слишком много вещей работают против вашей желаемой цели.

Если вы настраиваете свою перспективу, чтобы принять произвольную природу приложения, основанного на браузере, и вместо того, чтобы пытаться уничтожить все остатки состояния пользователя, чтобы избежать ошибокЛучше примите меры для обеспечения того, чтобы требуемые данные присутствовали в сеансе, а если нет, то заново создайте их или перенаправьте пользователя в соответствующее местоположение.

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

Удачи.

1 голос
/ 19 июля 2010

Вы можете использовать нестандартного поставщика членства, который вместо удаления учетной записи просто деактивирует его У вас также может быть собственный провайдер членства для одновременной блокировки учетной записи.

0 голосов
/ 20 июля 2010

FormsAuthentication.SignOut ();

Но вам нужно вызвать его в контексте пользователя, которого вы хотите выйти.

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