Проверка подлинности с помощью форм при использовании состояния сеанса SQL Server - PullRequest
0 голосов
/ 28 марта 2012

Я боролся с проблемой в последнее время.Мой веб-сайт, использующий проверку подлинности по формам, неожиданно ведет себя довольно странно.Когда время проверки подлинности форм истекло, я вижу, что вышел из приложения, но по какой-то причине я не перенаправлен на страницу входа.Раньше это работало абсолютно нормально.Не уверен, что случилось с этим внезапно.Я использую SQL Server для хранения состояния сеанса, и когда я сделал свое приложение в inProc, все выглядит хорошо.

Я даже удалил и заново создал свою базу данных состояний сеанса ASP.NET, но пока не повезло.Когда я просматриваю Просмотр событий, у меня появляется много записей со следующим сообщением:

"Проверка подлинности с помощью форм для запроса не удалась. Причина: срок действия предоставленного билета истек."

При небольшом поиске кто-тосказал, что это может произойти с утилизацией пула приложений.Я даже удалил и заново создал пул приложений.Но, тем не менее, меня не перенаправляют на страницу входа.

Может кто-нибудь помочь мне здесь.

Спасибо.

1 Ответ

0 голосов
/ 29 марта 2012

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

Это заблокирует всех пользователей, которые не вошли в систему, и приведет к перенаправлению науказанная страница входа.Поместите его сразу после тега <authentication> для простоты.

<authorization>
    <deny users="?" /> 
</authorization>

Если вы хотите ограничиться более конкретными терминами, вы можете добавить <location> элементов с более подробной информацией.См. эту статью для получения дополнительной информации.

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