2010-03-08 2 views
2

Я пишу приложение ASP.NET MVC, использующее проверку подлинности с помощью форм. Целевыми клиентами являются различные мобильные веб-браузеры.Поддержка Blackberry для проверки подлинности форм - приложение ASP.NET MVC

Когда я использую симулятор BlackBerry 8530, мое приложение MVC аутентифицируется, как и ожидалось. Я могу посетить страницы, методы контроллеров которых украшены атрибутом [Authorize] - без проблем - они отображаются, и поэтому я предполагаю, что моя проверка подлинности на основе форм работает правильно.

Использование физического устройства Windows Mobile для просмотра моего сайта, у меня такой же опыт, что и симулятор BB, проверка подлинности форм работает так, как я ожидал.

НО, когда я пытаюсь посетить сайт с использованием физического устройства Blackberry 8900, страница входа в систему продолжает циклически возвращаться, когда я нажимаю на странице входа. Устройство не сохраняет статус «аутентифицирован».

Я добавил код, чтобы убедиться в этом, и я могу видеть, что: Request.IsAuthenticated: Ложные User.Identity.IsAuthenticated: Ложные

Так что мой вопрос, что дальнейшие шаги можно предпринять, чтобы попытаться выяснить, почему Blackberry 8900 теряет статус аутентификации. Связан ли этот файл cookie?

У кого-нибудь есть идеи?

Приветствия Дерек

ответ

1

В вашем web.config, попробуйте поставить cookieless="true" в sessionState теге

+0

Gregoire, когда я добавляю Cookieless = "истинный" он разбивает URL переписывания. –

+0

@ Derek Mitchell Если вы не можете изменить URL-маршрут, у вас нет cookie, единственное оставшееся решение, которое я вижу, это добавление скрытого поля с идентификатором сеанса и преобразование каждой ссылки в форме ... – Gregoire

+0

спасибо за это предложение. Я предполагаю, что могу изменить маршрут, чтобы разместить cookieless sesstionState, но я действительно не хочу, чтобы все приложение MVC было без cookie. У большинства мобильных клиентов, похоже, нет проблем с аутентификацией на основе форм. Основываясь на вашей идее, я могу попробовать собственный атрибут авторизации, используя идентификатор сеанса ... –

Смежные вопросы