![]() |
|
Модераторы: LSD, AntonSaburov |
![]()
|
|
| Samotnik |
|
|||
![]() Super star ! ![]() ![]() ![]() ![]() Профиль Группа: Awaiting Authorisation Сообщений: 7192 Регистрация: 4.11.2006 Где: Минск City Репутация: 5 Всего: 191 |
привет
Вроде задание - самые азы и основы веб программирования, но скажу честно, я никогда с этим не сталкивался. Задание: сделать логин форму, чтобы зарегистрированные пользователи могли заходить под своим логином/паролем, и соответственно дальнейшее назначение прав. Интересует литература по этому вопросу, Ваши рекомендации, пожелания, частые ошибки. С чего начать ? Это сообщение отредактировал(а) Samotnik - 17.12.2010, 15:12 |
|||
|
||||
| Teresh |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 27 Регистрация: 1.4.2010 Репутация: нет Всего: нет |
Пример простейшей формы логин-пароль:
action -имя сервлета, который обрабатывает Ваш запрос Далее либо в сервлете, либо в классе, на который сервлет перенаправляет команду подключаться к БД и искать пользователя с введёнными данными. Найден - отлично, переход на какую-то страницу, иначе "вы ввели неверный логин или пароль". |
|||
|
||||
| Vladus |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 108 Регистрация: 1.2.2008 Репутация: 1 Всего: 4 |
а почему бы просто не воспользоватся spring security? лучше и проще имхо не найти
spring-security-manual |
|||
|
||||
| alexsaltykov |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 51 Регистрация: 17.8.2007 Репутация: нет Всего: нет |
есть еще jaas
есть книга jaasbook там есть примеры по данной теме, но она на английском |
|||
|
||||
| Samotnik |
|
|||
![]() Super star ! ![]() ![]() ![]() ![]() Профиль Группа: Awaiting Authorisation Сообщений: 7192 Регистрация: 4.11.2006 Где: Минск City Репутация: 5 Всего: 191 |
Vladus, спринга в проекте нету, и я его не знаю :( Не знаю что делать, начать его использовать или нет ...
Добавлено через 34 секунды кстати, вся клиентская часть должна быть на gwt, это не помеха юзать спринг ? |
|||
|
||||
| Vladus |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 108 Регистрация: 1.2.2008 Репутация: 1 Всего: 4 |
ну писать веб приложение без спринга как то грустно имхо
просто вопрос стоял
я бы использовал спринг секьюрити. использовать его с гвт можно, проблем быть не должно, ссылок в гугле масса, например spring_security_gwt написать свою логин форму - проблем нет никаких, да и в раздаче прав и настройки фильтров вроде тоже нет ничего военного, но не вижу смысла изобретать велосипед в общем смотрите сами, но я как то прикручивал секьюрити к проекту, особых проблем не было, все красиво и просто, рекомендую |
|||
|
||||
| Samotnik |
|
|||
![]() Super star ! ![]() ![]() ![]() ![]() Профиль Группа: Awaiting Authorisation Сообщений: 7192 Регистрация: 4.11.2006 Где: Минск City Репутация: 5 Всего: 191 |
Vladus, спасибо конечно, но я думаю это не очень хорошая идея в приложение без спринга тянуть спринг только ради аутентификации пользователей. Но и велосипед изобретать не хочется, нужно вменяемое, проверенное временем и протестированное решение на gwt.
|
|||
|
||||
| Samotnik |
|
|||
![]() Super star ! ![]() ![]() ![]() ![]() Профиль Группа: Awaiting Authorisation Сообщений: 7192 Регистрация: 4.11.2006 Где: Минск City Репутация: 5 Всего: 191 |
ну что, народ, как думаете стоит спринг в проект тянуть для логина, если проект написан не на спринге ?
Это сообщение отредактировал(а) Samotnik - 20.12.2010, 17:09 |
|||
|
||||
| SoulSeeker |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 58 Регистрация: 21.7.2008 Репутация: 2 Всего: 2 |
Samotnik, я для себя делал простую авторизацию с учетом куков исходя из этого примера: http://pyha.ru/articles/php/auth/ .
Там php, но логика одна и та же. На GWT переписать очень просто. Если надо, могу скинуть свой код. |
|||
|
||||
| Samotnik |
|
|||
![]() Super star ! ![]() ![]() ![]() ![]() Профиль Группа: Awaiting Authorisation Сообщений: 7192 Регистрация: 4.11.2006 Где: Минск City Репутация: 5 Всего: 191 |
SoulSeeker, спасибо, так примерно и сделал. Т.е. просто сохраняю в сессии логин и пароль.
Но появилась проблема. Если зайти на логин страницу, ввести логин/пароль, если успешно - то перекидывает на следующую страницу, а потом, если нажать кнопку назад в браузере, то опять попадаешь на логин форму Как это побороть ? |
|||
|
||||
| SoulSeeker |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 58 Регистрация: 21.7.2008 Репутация: 2 Всего: 2 |
Samotnik, тут все дело в куках. При успешной авторизации в них надо загонять что-нибудь, а потом проверять при последующих заходах.
У меня при загрузке приложения происходит попытка авторизации, для этого из cookies выдирается логин и хэш пароля. На историю, в принципе, тоже можно накатить такую же логику. |
|||
|
||||
| Samotnik |
|
|||
![]() Super star ! ![]() ![]() ![]() ![]() Профиль Группа: Awaiting Authorisation Сообщений: 7192 Регистрация: 4.11.2006 Где: Минск City Репутация: 5 Всего: 191 |
SoulSeeker, не понимаю, чем отличаться будет хранение данных в куках, от того что я храню их сейчас в сессии ?
|
|||
|
||||
| SoulSeeker |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 58 Регистрация: 21.7.2008 Репутация: 2 Всего: 2 |
Тут такое дело. Сессия - это для сервака, клиент про нее ничего не знает. Поэтому при успешной авторизации в куках должны осесть логин (или id) пользователя и md5 его пароля. Далее происходит следущее: при загрузке любой страницы изначально перед показом формы надо вытащить из куков id и пароль и попробовать авторизоваться на сервере. Если все ок, то пускать дальше без логин формы. У тебя, я так понял, идет работа с объектом History в GWT, поэтому надо на нее вешать хэндлер, чтобы при каждом смене url проверялась авторизация через куки.
Это сообщение отредактировал(а) SoulSeeker - 17.1.2011, 17:35 |
|||
|
||||
| zxspec |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 3 Регистрация: 6.2.2011 Репутация: нет Всего: нет |
Если вопрос литературы ещё актуален, то книга Federico Kereki "Building for the Web with Google Web Toolkit 2" - 100% то что доктор прописал.
У него детально описан опыт борьбы с логин-формой и History class. |
|||
|
||||
![]()
|
| Правила форума "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. |