Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java EE (J2EE) и Spring > Помогите с аутентификацией


Автор: Roxio 9.2.2008, 11:49
Здравствуйте!!! Очень нужна ваша помощь!
Необходимо реализовать аутентификацию пользователей на сайт. С использованием Hibernate и Struts.
Хочется видеть что-то типа: 
1. пользователю отображается Web-форма с запросом логина и пароля. 
2. должна быть валидация логина при помощи Struts
3. при помощи hibernate смотрим в базу MySQL, и если пользователь существует в таблице пускаем его, т.е. открываем сессию (с сессией бы желательно тоже поподробнее, т.е. как её запустить, этот вопрос волнует больше всего!) 
Заранее спасибо!

Автор: Kangaroo 9.2.2008, 12:19
Цитата(Roxio @  9.2.2008,  10:49 Найти цитируемый пост)
1. пользователю отображается Web-форма с запросом логина и пароля. 

Не вижу ничего сложного.

Цитата(Roxio @  9.2.2008,  10:49 Найти цитируемый пост)
2. должна быть валидация логина при помощи Struts

Со Стратс не работал. Может там есть стандартная схема какая-нибудь.


Цитата(Roxio @  9.2.2008,  10:49 Найти цитируемый пост)
пускаем его, т.е. открываем сессию (с сессией бы желательно тоже поподробнее, т.е. как её запустить, этот вопрос волнует больше всего!) 

Ничего запускать не надо. Сессия уже есть. Просто кладете в сессию (request.getSession().setAttribute("hi", "hello")) какой-нибудь идентификатор этого пользователя.

И еще:
1) Проверку залогинен/незалогинен обычно делают через фильтры
2) Вообще-то существуют стандартные средства аутентификации, это берет на себя контейнер. Но тут подсказать я не могу.


Автор: dobrynya 10.2.2008, 17:32
по поводу аутентификации могу посоветовать Acegi (ныне Spring) Security, для него реализуешь DAO, который лезет в БД или куда угодно, хоть в файлик smile. Он предоставляет возможность полностью контроллировать безопасность приложения. Валидация в Struts есть, без проблем

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)