Использование Spring Security с EJB или Spring? - PullRequest
3 голосов
/ 10 февраля 2010

Я хотел создать приложение на основе Java EE 6, но механизмов безопасности Java EE недостаточно, и мне не по себе. Spring Security кажется лучшим способом защитить мое приложение. Теперь мне интересно, является ли Spring Security + EJB хорошей комбинацией или мне лучше использовать только Spring.

Мне нужен перехват методов, списки ACL и, возможно, контроль доступа к шаблону URL. Основная проблема, которую я вижу, заключается в использовании перехвата EJB в Spring Security. Это проблема? Какие еще области могут быть проблематичными?

Вы бы предпочли Spring Security + EJB или Spring Security + Spring (только)?

Как сказал Скаффман, реальный вопрос - это Java EE против Spring. Есть хорошее сравнение от JBoss.

Ответы [ 3 ]

7 голосов
/ 10 февраля 2010

Spring Security отличается от Spring Framework. Они хорошо работают вместе, но Spring Security не требует от вас использования Spring Framework.

Так что в реальном смысле это не имеет значения, возникает вопрос, предпочитаете ли вы EJB3 или Spring, независимо от Spring Security.

0 голосов
/ 06 сентября 2012

Потратив много дней, пытаясь найти способ использовать только Springsecurity для защиты ejb, я принял гибридное решение: JAAS + springsecurity.

Клиент использует JAAS для аутентификации на сервере ejb на сервере. Я создал пользовательский модуль JAAS LoginModule, который делегирует аутентификацию коду безопасности.

EJB для выполнения своих логических методов использования, которые снабжены аннотациями jsr250 (RolesAllowed), и эта часть полностью обрабатывается пружинной безопасностью.

Таким образом, я добился четкого разделения между безопасностью ejb и spring, поэтому мой бизнес-код, защищенный springsecurity, полностью переносим на любой другой тип ApplicationServer или даже может работать как отдельное приложение.

0 голосов
/ 10 февраля 2010

Я не очень знаком с EJB, но я всегда понимал, что это по сути технология доступа к данным или способ распределения услуг.

Сам Spring и модуль Spring Security спроектированы так, чтобы быть очень легкими и ненавязчивыми. Если вы создаете веб-приложение и используете Spring Security для входа в систему / безопасности, то вам не важно, знаете ли вы, используете ли вы EJB против JDBC против удаленных технологий и т. Д.

...