Ошибка аутентификации при загрузке файлов в Websphere 7 - PullRequest
0 голосов
/ 10 февраля 2011

В настоящее время мы сталкиваемся с производственной проблемой на Websphere 7 в отношении компонента загрузки файлов richfaces.Описание проблемы состоит в том, что сразу после просмотра и выбора файла для загрузки с использованием этого компонента появляется диалоговое окно базовой аутентификации с запросом учетных данных пользователя.

Ниже приведены рамки, которые мы используем в нашем проекте:

JSF 1.2 и Richfaces 3.3.3 Spring Framework 3.x Spring Webflow 2.1 Spring Security 3.x (только базовая аутентификация с использованием диалогового окна входа в систему)

Пользователь аутентифицируется один раз, когда он хочет получить доступ к приложению наНачало использования базовой аутентификации.Все экраны, которые не используют компонент fileupload, работают нормально.Но если мы используем компонент fileupload, как я упоминал выше, выбор файла (даже из пути к локальной машине) снова вызывает диалоговое окно базовой аутентификации.Странно то, что такое поведение не происходит в нашей среде разработки, которая использует Tomcat 6. В Tomcat загрузка файла не вызывает входа пользователя в систему, и загрузка работает нормально.

Эта проблема возникает только тогда, когда приложение,развертывается в Websphere 7. Кто-нибудь может сказать, требуется ли Websphere какая-либо дополнительная конфигурация для доступа к файлам через этот компонент?

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

Поэтому, пожалуйста, помогите в этом отношении.Заранее спасибо.

1 Ответ

1 голос
/ 10 февраля 2011

Я не знаю компонента File Upload, и ответ может лежать в деталях того, как это работает, но в целом WebSphere вызовет проблему, если HTTP-запрос приходит для защищенного ресурса, и запрос не содержит действительногоLTPA cookie.Файл cookie обычно отправляется браузером при каждом запросе, когда проверка подлинности происходит один раз, НО он будет делать это только в том случае, если он считает, что файл cookie связан с данным доменом.Таким образом, если бы основная часть вашего веб-сайта обслуживалась, скажем, с

htpp://my.own.org.com/mysite

, а загрузка файла была связана с немного другим хостом

http://my.other/filesite

, тогда cookie не был бы отправлен, и в результате возникнет проблема.

Мой подход к диагностике этого - получить какой-то анализатор трафика.Посмотрите точно, что течет и используемые адреса.Я предсказываю, что вы увидите куки LTPA в обычном случае, а не в случае загрузки.Тогда нужно выяснить «почему».

...