![]() |
|
Модераторы: LSD, AntonSaburov |
![]()
|
|
| almostlost |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 38 Регистрация: 3.5.2007 Репутация: нет Всего: нет |
День добрый, уважаемые разработчики.
Есть вебсервис. Есть для него администрирование. Чтобы попасть в зону администрирование необходимо ввести пароль. Для всех кто не ввел пароль при попытке открыть любую страницу относящуюся к администрированию должно выдаваться Forbidden. У меня вопрос, как это ПРАВИЛЬНО организовать? Саму безопасность...Ведь нужно гдето хранить какойто флаг о том что этот пользователь имеет доступ ко всем страницам аминистрирования... не в EJB? Просто хочется обезопасить такой проект... Очень жду рекомендаций.. Спасибо большое. |
|||
|
||||
| kkorsakoff |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 378 Регистрация: 18.10.2005 Где: Санкт-Петербург Репутация: 6 Всего: 14 |
Обычно хранят в сессии (HttpSession) или флаг или какой-нибудь идентификатор залогигенного пользователя (id, username,...)
|
|||
|
||||
| hamsterKSU |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 401 Регистрация: 20.10.2006 Где: Украина, Херсон Репутация: 3 Всего: 11 |
по моему практически во всех application server-ах есть втсроеный механизм security такой, как JAAS например. настраивешь его и радуешься жизни. application server большую часть работы по защите возьмет на себя и веб сервисы он может защищать.
в веб сервисе просто ставищь анотацию SecurityDomain, помоему но не уверен, ее можно поставить на весь вед сервис или на отдельные методы. если тебе надо зашитить веб приложение то security описываешь в web.xml |
|||
|
||||
| almostlost |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 38 Регистрация: 3.5.2007 Репутация: нет Всего: нет |
Спасибо за ответы. Все понятно.
И еще вопросы: - Если на сайте есть опрос, то как Правильно организовать проверку, отвечал ли пользователь, на опрос или нет, тоже через HttpSession? И идентификацию пользователя при этом(голосовал или нет) проводить через айпи адресс? - И как узнать айпи адресс юзера, внешний и внутренний, и как по этому адрессу, узнать его приблизительное место нахождения? |
|||
|
||||
| kkorsakoff |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 378 Регистрация: 18.10.2005 Где: Санкт-Петербург Репутация: 6 Всего: 14 |
Голосовалку так лучше не делать, т.к. HttpSession пропадет через некоторое время жизни сессии (по умолчанию 30 минут).
Для этого используют куки. Ставят куку, где указано, например, в каких голосованиях юзер уже принял участие. Чем хорошо: кука хранится на компьютере конкретного пользователя, причем практически неограниченное время. Минусы: куки можно стереть. Так же можно сделать проверку по IP. Плюсы: Ip-адрес не сотрешь. Минусы: это не очень практично, т.к. большие организации часто сидят под одним айпи Внешний адрес узнать просто: request.getRemoteAddr() Узнать внутренний адрес...ммм...без установки чего-нибудь на компьютер пользователя (приложение, апплет, active-x) я даже и не знаю как. Местонахождение узнать можно достаточно точно по базе GeoIP http://www.maxmind.com/app/country http://www.maxmind.com/app/city Там есть бесплатная база с немного меньшей точностью (многих вполне устраивает |
|||
|
||||
| hamsterKSU |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 401 Регистрация: 20.10.2006 Где: Украина, Херсон Репутация: 3 Всего: 11 |
а если юзер залогинился с другой машины? или с другого браузера у себя на машине? - пиши пропало сделай на сервере у юзера список опросов за которые он проголосовал и все. - в случае если надо провести "перегалосовку" - просто сбрасываешь флаги у юзера или удаляешь запись |
|||
|
||||
| almostlost |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 38 Регистрация: 3.5.2007 Репутация: нет Всего: нет |
спасиба большое за рекомендации и ссылки...
Но ведь чтобы участвовать в опросе не обязательно быть зерегистрированным юзером, может на этом сайте вообще не будет регистрации\авторизации. Как тогда узнать, что именно этот юзер голосовал? Видимо, то о чем ты говоришь, это еще один недостаток куков... Это сообщение отредактировал(а) almostlost - 18.12.2007, 11:37 |
|||
|
||||
![]()
|
| Правила форума "Java" | |
|
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Java EE (J2EE) и Spring | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |