2012-04-11 3 views
0

Я использую PrettyFaces 3.3.3. У меня есть требование, чтобы, если пользователь пытается просмотреть страницу, но не входит в систему, они отправляются на страницу входа в систему, а затем перенаправляются на исходную страницу, которую они хотели просмотреть. Просто интересно, какой будет лучший подход для этого.PrettyFaces перенаправить на URL RESTful после входа в систему

ответ

1

Возможно, вам нужна инфраструктура безопасности. Основная идея заключается в том, что вы хотите перехватить запрошенный URL-адрес в своем защищенном фильтре, сохранить его в сеансе пользователя, а затем после завершения проверки подлинности (например, пользователь отправил форму со своими учетными данными или любым другим механизмом, который вы используете) вы извлекаете сохраненный URL-адрес из сеанса пользователя и выполняете перенаправление 302 на него.

Это не то, что PrettyFaces поможет вам непосредственно, за исключением того, что вы можете использовать его, чтобы захватить URL более легко с помощью PrettyContext.getCurrentInstance(request).getRequestURL();

Существует статья об этом здесь: http://ocpsoft.org/java/jsf-java/spring-security-what-happens-after-you-log-in/

Использование OCPsoft Rewrite (ядро из PrettyFaces 4) вы также можете сделать это программно и даже выполнить аутентификацию непосредственно в своих правилах безопасности или в настройках аннотации: https://github.com/ocpsoft/prettyfaces/blob/master/annotations/src/test/java/org/ocpsoft/prettyfaces/annotation/jaas/JaasRolesBean.java

Это предстоящая функция, но еще не завершена - мы будем рады получить обратную связь.

+0

Спасибо за ваш ответ. Я закончил использование фазового прослушивателя, но буду помнить об этих вариантах в недалеком будущем. – JasonI

Смежные вопросы