Модераторы: LSD, AntonSaburov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Авторизация и JSF или Struts, поиск кошерного пути 
:(
    Опции темы
sandello
Дата 17.2.2006, 07:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 295
Регистрация: 18.5.2005
Где: Пермь

Репутация: нет
Всего: 2



Давно мучает вопрос о том как правильно сделать авторизацию на JSF или Struts сайте.

Я различаю 2 вида авторизации:
1. Http авторизация.
2. Form-based авторизация.

После некоторых умозаключений получил небольшой список необходимых возможностей:
1. свободный выбор метода, проводящего непосредственную авторизацию (RADIUS, LDAP, etc)
2. автоматический переход к авторизации при попытке доступа к любому защищенному ресурсу с последующим переходом к этому ресурсу в случае успешной авторизации.

Буду рад, если список требований будет дополнен или аргументированно изменен.


--------------------
user posted image
PM MAIL Jabber   Вверх
alexsmirnov
Дата 28.2.2006, 22:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 76
Регистрация: 23.8.2005

Репутация: 5
Всего: 7



А чем не устраивает имеющийся в контейнере JAAS ? вроде все заявленное присутствует.
PM MAIL   Вверх
jsa
Дата 3.3.2006, 12:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 704
Регистрация: 19.1.2006
Где: Новосибирск

Репутация: 2
Всего: 20



Цитата(sandello @ 17.2.2006, 07:44)
2. автоматический переход к авторизации при попытке доступа к любому защищенному ресурсу с последующим переходом к этому ресурсу в случае успешной авторизации.

3. автоматический переход после успешной аутентификации, но проваленой авторизацией, к некому ресурсу с меньшими привелегиями, нежели запрашиваемый
Добавлено @ 12:37
Цитата(sandello @ 17.2.2006, 07:44)
Я различаю 2 вида авторизации:
1. Http авторизация.
2. Form-based авторизация.

3. че нить типа Native, например через NTLM, чем не метод, пользователь подключается к корпоративному домену, и после этого он счиатается прошедьшим аутентификацию


--------------------
Все мы, на перине с песней, строим небо на земле © Ю. Шевчук
PM MAIL ICQ   Вверх
AngerOgAnAngel
Дата 3.3.2006, 13:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 9
Регистрация: 3.3.2006

Репутация: нет
Всего: нет



Вообще ты путаешь понятия авторизации и аутентификации. Все что тебе нужно реализовано практически во всех котейнерах. Обычно это JAAS(как уже было сказано). Все средства аутентификации - проверка пароля и юзера, а также авторизации - проверка на права доступа аутентифицированного юзера к ресурсам. А если тебя интересует реализация интерфейса для аутентификации, то можешь глянуть это пример для JSF , пример для struts . Все остальное прописывается согласно спекам в xml-ках твоего приложения. Здесь не сложно найти все в гугле. Если нужно ,могу кинуть пару примерчиков.
PM MAIL   Вверх
Alexis
Дата 12.11.2006, 18:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 133
Регистрация: 14.8.2006
Где: Казань

Репутация: 5
Всего: 5



Цитата(AngerOgAnAngel @  3.3.2006,  13:51 Найти цитируемый пост)
 Если нужно ,могу кинуть пару примерчиков.

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

В моем приложении авторизация требуется только для админки. Т. е. на всем сайте пользователи спокойно ходят, а вот если захотят зайти в http://www.domain.com/admin, то у него затребуют пройти аутентификацию.
Собственно говоря есть такие идеи:
1) Все JSP-страницы в каталоге admin построить по следующей структуре:
Код

<logic:notPresent name="user" scope="session">
    <!-- Стой! Кто идет? -->
    <logic:redirect forward="login"/>
</logic:notPresent>
<logic:present name="user" scope="session">
    <logic:equal name="user" property="role" value="admin">
        <!-- Секретные админские формы -->
    </logic:equal>
</logic:present>

В Action'е login спрашивать имя и пароль, проверять их и, если свой человек, то добавлять в сессию аттрибут user.
Тогда встают вопросы:
  • где же хранить имена, пароли и роли пользователей? В БД или в каком нибудь конфиге?
  • Пароли ведь как-то нужно шифровать или хранять прямо в обычном виде?
  • Нужно ли еще для надежности в админских Action'ах проверять пользователя?

2) Прочитал, что самый хороший способ -- это "The best practice is to extend the RequestProcessor class and perform authentication in methods such as processActionPerform() or processRoles().", только так и не понял как это реализовать.

3) Может быть какой-нибудь фильтр написать, чтобы он не пускал кого попало в админку?

Может быть есть решения получше вышеописанных?  smile 
PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   tux
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java EE (J2EE) и Spring | Следующая тема »


 




[ Время генерации скрипта: 0.0637 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.