Аутентификация JSF - PullRequest
       6

Аутентификация JSF

3 голосов
/ 20 сентября 2010

Я занимаюсь разработкой приложения Java EE (JSF2 + richfaces + Facelets + Tomcat).Какой лучший способ выполнить аутентификацию при использовании JSF?Или я должен сделать свой собственный?

Ответы [ 8 ]

6 голосов
/ 21 сентября 2010

Люди обычно выбирают между (без определенного порядка):

JAAS (который является платформой безопасности Java / Java EE по умолчанию)
Весенняя безопасность
Изготовленная на заказ безопасность

Я никогда не использовал Spring Security, но документация огромна, я отказался от попыток сделать это однажды из-за нехватки времени. JAAS обладает простотой и простотой работы с Tomcat.

Я также видел настраиваемую систему безопасности на основе JAAS.

Что вам действительно нужно сделать, так это выяснить, что вам конкретно понадобится в вашем приложении, и проверить, какие фреймворки лучше соответствуют вашим потребностям.

Не зная потребностей вашего бизнеса, если вам нужна только Аутентификация (вход в систему), я бы сказал, что JAAS - это самый простой способ, так как он не навязывает приложения, и вам не нужно добавлять зависимости Spring, если вы еще не используете его .

3 голосов
/ 20 сентября 2010

Перейти на Spring Security

Здесь - как интегрировать его с JSF

Редактировать:

http://ocpsoft.com/java/acegi-spring-security-jsf-login-page/

1 голос
/ 12 мая 2012

Я думаю, что Леонардо ответил правильно, но вы также можете рассмотреть Центральная служба аутентификации (CAS) для обеспечения безопасности в масштабах предприятия. Это немного сложнее в настройке, но преимущества огромны. Он также поддерживает огромное количество встроенных механизмов аутентификации от LDAP до NTLM. CAS также предоставляет расширение для пользовательской аутентификации.

Если вы решите использовать контейнеры Java EE и хотите использовать аутентификацию на основе форм, я опубликовал несколько примеров для использования с JSF 1.2 и 2.0 и j_security_check

Кроме того, API Servlet 3.0 обеспечивает вход в систему и аутентификацию на основе контейнера через API HttpServletRequest .

0 голосов
/ 07 июня 2016

Для простой аутентификации очень простой подход заключается в проверке действительного пользовательского объекта в шаблоне с использованием JSTL и отображении формы входа в систему, если нет. например, предположим, что ваш шаблон webapp/WEB-INF/templates/default.xhtml, внутри шаблона:

<html...>
.
.
<h:body>
<c:if test="#{mbSecurity.validUser}">
.
. authenticated template sections goes here
.
</c:if>

<c:if test="#{not mbSecurity.validUser}">
   <ui:include src="/WEB-INF/inc/login-form.xhtml" />
</c:if>
</h:body>
</html>

Преимущества: нулевые зависимости и нулевые конфигурации, также, если сеанс истек, после входа в систему пользователь вернется на исходную страницу, на которой он находился.

0 голосов
/ 06 декабря 2012

Можно попробовать Apache Shiro, который дает аутентификацию, авторизацию и многое другое.

0 голосов
/ 24 июля 2012

ссылки для интеграции безопасности пружины эта ссылка предоставляет код для интеграции пружины с jsf1.2.

0 голосов
/ 13 марта 2012

Помимо упомянутых платформ, есть также Seam Security, которая прекрасно интегрируется с CDI через расширение.

0 голосов
/ 21 сентября 2010

JBoss Seam очень хорошо интегрирует EJB 3, Facelets, JSF и Hibernate.Также обеспечивает проверку данных и некоторые вещи безопасности.Если вы используете его для всех его функций, это действительно мило.Если вы попытаетесь выбрать только некоторые вещи из этого, тогда это все еще круто, но у вас есть несколько обходных путей.Но я был впечатлен тем, что я до сих пор видел в Шове.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...