![]() |
Модераторы: LSD, AntonSaburov |
![]() ![]() ![]() |
|
fidel |
|
|||
Новичок Профиль Группа: Участник Сообщений: 7 Регистрация: 4.9.2006 Репутация: нет Всего: нет |
Помогите найти реальный пример в интернете: надо найти веб-приложение(jsp+servlet), которое бы при логине юзеров, в зависимости от их прав, разрешала производить разные действия, вся информация о юзерах должна храниться в БД, короче надо найти пример Java Role Based Access
|
|||
|
||||
sergakrem |
|
||||
![]() Новичок Профиль Группа: Участник Сообщений: 38 Регистрация: 28.7.2006 Где: Украина, г. Киев Репутация: нет Всего: нет |
Доброе время суток.
А такой вопрос наводящий - Вы собираетесь права разграничивать для объектов или системных action'ов? Просто сам по себе "Java Role Based Access" - весьма размытое понятие. Хотя ответ на этот вопрос достаточно важен, т.к. от него зависит архитектура системы безопасности. Просто могу поделиться опытом сождания приложения с "Role Based Access" на базе Spring Framework и Acegi Security. Там, при таком подходе все достаточно просто: 1. Создается файл "security.xml" в котором описываются роли и пользователи (добавляются они соответственно модифкацией XML-файла), а так же соответственно - что им можно смотреть (вызывать экшины, т.е. их маски)(вторая часть файла). (Он включается в WEB.XML для дальнейшей обработки Spring)
2. В WEB.XML добавляется слушатель и маппинг:
(Вобщем-то это все очень подробно описано в примерах) 3. Ну и собственно подключается сама библиотека ACEGI. А дальше при обращении к каким-то путям, попадающим под паттерны она их сравнивает с /acegilogin.jsp*=ROLE_ANONYMOUS /forbidden.jsp*=ROLE_ANONYMOUS /page_not_found.jsp*=ROLE_ANONYMOUS /report*=ROLE_DATA /report/**=ROLE_DATA /dataextr*=ROLE_DATA /admin*=ROLE_ADMIN /admin/**=ROLE_ADMIN /index.jsp=ROLE_DEFAULT /index.app=ROLE_DEFAULT /logout.app=ROLE_DEFAULT и соответственно пускает - или не пускает. Ну а на логин странице нужно просто сообщить ACEGI - кто пришел. Единственное что - я так понимаю, что бы заставить ее работать на уровне объектов - нужно очень хорошо обработать напильником. ![]() Дополнительные ссылки: Acegi Security Framework: http://www.acegisecurity.org/ Обсуждение темы: 1. http://www.codecomments.com/archive253-2005-4-153855.html 2. http://portal.acm.org/citation.cfm?id=286904 Это сообщение отредактировал(а) sergakrem - 5.9.2006, 00:32 |
||||
|
|||||
![]() ![]() ![]() |
Правила форума "Java" | |
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Java EE (J2EE) и Spring | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |