![]() |
|
Модераторы: LSD, AntonSaburov |
![]()
|
|
| Eric_Cartman |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 45 Регистрация: 2.3.2008 Репутация: нет Всего: 1 |
В тему призывается MisterCleric =)
Текущий applicationContext-security.xml выглядит (частично) следующим образом
требуется помощь в превращении жалких попыток в настройки remember me в корректную и работающую конфигурацию оного Это сообщение отредактировал(а) Eric_Cartman - 23.11.2009, 11:26 |
|||
|
||||
| MisterCleric |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1043 Регистрация: 16.2.2006 Где: Харьков, Украина Репутация: 33 Всего: 38 |
Привет. Спасибо за личное приглашение
А в чем собственно проблема? Где валится ошибка? Таким, способом, я конечно, не настраивал секурити, но что-то я в твоем коде не нахожу использования фильтра rememberMeProcessingFilter Ты же у springSecurityFilterChain Указал стэк фильтров, которые использовать, а почему же туда не поставил и нужный тебе? -------------------- ПРИШЕЛ, УВИДЕЛ - ПЕРЕПИСАЛ... |
|||
|
||||
| Eric_Cartman |
|
||||||
|
Новичок Профиль Группа: Участник Сообщений: 45 Регистрация: 2.3.2008 Репутация: нет Всего: 1 |
да, в общем то вопрос как раз в том, куда воткнуть этот фильтр (там же все сильно зависит от порядка этих фильтров, насколько я понял), и как его правильно настроить (я не уверен что у меня верно прописан его конфиг) я втыкал его так:
Вместе с тем добавлял remembermeAuthenticationProvider в список провайдеров для authenticationManager'а так
У меня даже заработал ремемберМи, только вот я в таком случае не мог разлогинится (разлогинивание приводило к моментальному логину по ремер\мберМи) |
||||||
|
|||||||
| MisterCleric |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1043 Регистрация: 16.2.2006 Где: Харьков, Украина Репутация: 33 Всего: 38 |
Здесь важна последовательность фильтров.
Вот по исходникам какой стек подефолту:
И здесь видно, что REMEMBER_ME_FILTER идет далеко после LOGOUT_FILTER, а не так как у тебя.... -------------------- ПРИШЕЛ, УВИДЕЛ - ПЕРЕПИСАЛ... |
|||
|
||||
| Eric_Cartman |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 45 Регистрация: 2.3.2008 Репутация: нет Всего: 1 |
Все равно та же фигня.
MisterCleric, не в курсе где можно про фильтры и в особенности про их порядок почитать более-менее адекватную информацию? П.С. Ну кроме очевидных ответов, как то, форум Спринга, доки по СС, ествественно =) |
|||
|
||||
| MisterCleric |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1043 Регистрация: 16.2.2006 Где: Харьков, Украина Репутация: 33 Всего: 38 |
Кажись я вижу, чего у тебя не хватает.
У тебя определен logoutFilter Ему ты указываешь в конструкторе список LogoutHandler[] В твоем коде там есть всего лишь SecurityContextLogoutHandler Согласно доке:
Надо этому logoutFilter еще указать и TokenBasedRememberMeServices, что бы он инвалидировал куки и не давал срабатывать автологину. Пробуй -------------------- ПРИШЕЛ, УВИДЕЛ - ПЕРЕПИСАЛ... |
|||
|
||||
| Eric_Cartman |
|
||||
|
Новичок Профиль Группа: Участник Сообщений: 45 Регистрация: 2.3.2008 Репутация: нет Всего: 1 |
Да, затащило =) Благодарю, что помог разобраться! |
||||
|
|||||
| vicod |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 124 Регистрация: 24.10.2007 Где: odessa.ua Репутация: 0 Всего: 2 |
Если я написал свой собственный фильтр, куда мне его добавить? обязательно в конфиге описывать все остальные фильтры?
|
|||
|
||||
| MisterCleric |
|
||||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1043 Регистрация: 16.2.2006 Где: Харьков, Украина Репутация: 33 Всего: 38 |
да, иначе работать не будет. Есть конфигурация по-дефолту, а вот если мы что-то хотим еще, то обязательно надо указывать и остальное. Вот пример моего кастомного фильтра, как я его в конфиге определяю:
-------------------- ПРИШЕЛ, УВИДЕЛ - ПЕРЕПИСАЛ... |
||||
|
|||||
| vicod |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 124 Регистрация: 24.10.2007 Где: odessa.ua Репутация: 0 Всего: 2 |
MisterCleric запость плз это все остальное и где вставить свой фильтр
|
|||
|
||||
| MisterCleric |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1043 Регистрация: 16.2.2006 Где: Харьков, Украина Репутация: 33 Всего: 38 |
Давай наоборот: ты свой конфиг, а я посмотрю где, что не так. Сам понимаешь: код-то не опенсорс... -------------------- ПРИШЕЛ, УВИДЕЛ - ПЕРЕПИСАЛ... |
|||
|
||||
| vicod |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 124 Регистрация: 24.10.2007 Где: odessa.ua Репутация: 0 Всего: 2 |
нашел уже решение
1. нужно в <security:http> тэге установить auto-config="false". 2. обычным <bean> обьявляешь свой фильтр 3. внутри него добавляешь <security:custom-filter> в котором указываешь каким по счету идет твой фильтр, можно определить перед кем или после какого фильтра, самый первый или самый последний, короче очень гибко Это сообщение отредактировал(а) vicod - 20.11.2009, 17:44 |
|||
|
||||
| garbuz |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 677 Регистрация: 22.1.2008 Репутация: 8 Всего: 11 |
Eric_Cartman, не мог бы ты выложить свою полную конфигурацию security?
|
|||
|
||||
![]()
|
| Правила форума "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. |