Предпочтительно что-то, что интегрируется хорошо с фронтэндом Flex. Да парни безопасности Spring говорят, что это возможно, но все примеры, кажется, используют наследие jsp библиотеки тегов, делающие их наполовину бесполезный как примеры. Я не хочу проводить месяц, настраивая и учась, как использовать средства обеспечения безопасности. Я хотел бы инструмент, который поддерживает аннотации использования (@RolesAllowed и т.д.), МИНИМАЛЬНЫЕ XML, и 'помнят - меня' функции (не базирующийся cookie).
Shiro Apache, кажется, поддерживает Flex/Silverlight/Swing также, но я хотел бы знать, существуют ли какие-либо другие альтернативы, которые НЕ являются конкретным контейнером.
Я не понимаю, почему Flex должен аутентифицировать что-либо, в конце концов, это клиентская сторона. Что мешает кому-то декомпилировать ваш flash / flex?
Для большинства людей Apache Shiro - это перебор, и они просто катятся самостоятельно. Честно говоря, это не лучшая идея. За эти годы я видел много ужасных систем аутентификации. Файлы cookie предназначены для отслеживания сеанса для клиента, зачем использовать что-то еще?
Изменить: Использовать пружинную защиту для аутентификации.
Spring Security - безусловно, лучший инструмент.
BlazeDS - это не магия. В конечном итоге это просто вызов сервера через HTTP. Приложение Blaze - это просто военный файл с традиционными URL-адресами. Итак, чтобы защитить службы, вы должны защитить URL-адреса в файлах конфигурации web.xml / spring.
По сути, прочтите документацию Spring Security / JAAS и замените jsps URL-адресами ваших сервисов blaze.
Spring Security также поддерживает роли и авторизацию. Он также имеет функцию «запомнить меня» , но , которая полностью использует файлы cookie. У вас не может быть функции «запомнить меня» без файлов cookie.
Что касается аутентификации, можно передать токен аутентификации в качестве параметра запроса вместо файла cookie. Но файлы cookie рекомендуются, и их намного легче исправить.
И, наконец, безопасность бессмысленна без использования https. Вы обязательно должны использовать https во всем своем приложении, если вы заботитесь о безопасности.