GWT RPC Cookie-аутентификация - PullRequest
       5

GWT RPC Cookie-аутентификация

3 голосов
/ 16 февраля 2010

Я использую gwt на своем сервере glassfish и пытаюсь сделать некоторые из моих вызовов RPC аутентифицированными с помощью файлов cookie. Это возможно? Есть ли какие-нибудь примеры того, как это закодировать?

Ответы [ 4 ]

2 голосов
/ 16 февраля 2010

В зависимости только от файла cookie для проверки подлинности ваш веб-сайт / службы будут уязвимы для кросс-сайт-подделки запросов / атак XSRF / CSRF - подробнее об этом см. Безопасность для приложений GWT .

Лучшим способом было бы перепроверить значение, которое вы получаете от куки, и с тем, которое было передано на сервер другими способами - как часть запроса (заголовок, настраиваемое поле и т. Д.).

Кроме этого, существует множество учебных материалов, охватывающих эту тему - просто поиск по аутентификации Java (сервлет) - она ​​не должна быть специфичной для GWT. Группа Google Web Toolkit также имеет множество потоков о субъект .

0 голосов
/ 17 февраля 2010

Можете ли вы не просто использовать стандартную сессионную область, то есть

request.getSession()

Шаблон, который я использую в приложениях GWT, должен иметь отдельную «старомодную» форму входа, которая устанавливает сеанс. Страница хоста приложения GWT отображается после успешного входа в систему.

Если необходимые значения отсутствуют в сеансе, то пользователь не вошел в систему. Возможно, ваш сервис должен вернуть исключение, которое указывает приложению GWT на перенаправление на страницу входа или отображение ошибки. 1006 *

0 голосов
/ 16 февраля 2010

Вы можете переосмыслить использование куки, поскольку это потенциальная дыра в безопасности.Почему бы не перевести ваше сообщение на HTTPS?

0 голосов
/ 16 февраля 2010

Я предполагаю, что вы используете RPC-сервлет GWT для обработки запросов, сделанных клиентом.

Один вариант, который мне приходит в голову, - это написать и настроить ServletFilter, который может проверять cookie, прежде чем запрос достигнет сервлета GWT.

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