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


Автор: Tsyklop 27.4.2016, 13:57
При авторизации пользователя создаются печеньки: Есть главная страница - index.jsp Есть домашняя страница, куда попадают после авторизации - home.jsp Есть Фильтр, который завязан на home.jsp. Авторизация происходит в фильтре(через класс идёт подключение к бд) и если всё успешно то создаются печеньки и дальше всё переходит к home.jsp. В home.jsp в самом начале идёт проверка на печеньки и если они есть то юзер остаётся на странице, если нет делаю Redirect на index.jsp.

Суть проблемы в том что после выхода из Фильтра печенек нет. После него идёт проверка в home.jsp и соотвецтвенно он перенаправляет на index а там уже печеньки появляются и он перенаправляет на home. Так же само если делать это всё через Сервлен

Вопрос как такое лечить? знаю вариант это добавлять куки уже на самой home странице.

Код добавления в куки:
Код


Cookie cookie = new Cookie("login", Login);

cookie.setMaxAge(CookiesTime);

res.addCookie(cookie);

Автор: drgnav 28.4.2016, 18:44
На мой взгляд речь идет не об авторизации (проверки полномочий), а об аутентификации (подтверждения, что пользователь тот за когто себя выдает) - это принциаиально разные понятияя.
Совершенно не понимаю, для чего нужны эти сложности, когда сервер удовлетворяющий спецификации J2EE в части безопасности, содержит достаточный набор сервисов для решения выших задач:
    Basic HTTP - web сервер аутентифицирует принципала на основе имени пользователя и его пароля
    Form Based - аутентификация настраивается пользователем на основе web формы
    HTTPS mutual authentication - клиент и сервер используют X.509 сертификаты с использованием SSL. Самое главное делает это самостоятельно, без необходимости изобретать велосипеды.
А если и этого не хватае, то JAAS.
Может быть не хватает теоретических знаний? Вот ссылка - http://docs.oracle.com/javaee/6/tutorial/doc/bnbwk.html#bnbwo
Если не так, тогда нужно смотреть постановку задачи на бизнес уровне.

Этот ответ добавлен с нового Винграда - http://ru.vingrad.com/Problema-s-dobavleniyem-pechenek-v-filtre-servlete-id57209bb4ae201522788b4567#findElement_E7045_57222fe1ae2015b05362e738_0

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