Безопасность Java в не-веб-приложении - PullRequest
2 голосов
/ 30 января 2009

Кто-нибудь знает хорошую платформу безопасности с открытым исходным кодом для Java?

Я немного поиграл с jSecurity, и это кажется действительно классным, но документация настолько скудная, что я не могу добиться никакого прогресса.

Spring Security кажется ориентированным на веб-приложения, но я могу ошибаться.

Я не против написать это сам, но кажется, что это должно было быть сделано раньше, зачем изобретать велосипед?

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

Пример: Приложение 1 имеет действия 1, 2, 3 (например, «canOpenRemoteFiles» или «canReprocessTransactions») Приложение 2 имеет действия 4, 5, 6, 7

В конечном итоге мне нужно будет сделать что-то вроде:

// -- the call may not be this declarative
boolean foo = user.getApp1().canReprocessTransactions();
// do something with foo...

// -- or something like this
boolean bar = user.getApp2().canDoAction1();
// do something with bar...

// -- or...
ArrayList < String > dirsCanAccess = user.getApp1().getAccessableDirs();

Заранее спасибо.

Ответы [ 4 ]

3 голосов
/ 30 января 2009

В последний раз, когда я смотрел на Spring-Security, он казался очень веб-ориентированным.

Но ... ребята из Spring довольно хороши, и я подозреваю, что у них много строительных блоков, которые вы могли бы использовать из базовой библиотеки Spring-Security.

1 голос
/ 30 января 2009

Вы можете использовать Acegi Security Framework (на основе Spring). Инфраструктура обеспечивает перехват безопасности на основе AOP, который можно использовать для управления доступом на уровне метода даже вне веб-приложения. Ссылка на фреймворк http://www.acegisecurity.org/

0 голосов
/ 23 февраля 2009

После гораздо большего количества копаний jSecurity был подходящим вариантом. Он недостаточно хорошо документирован, но довольно прост в использовании.

0 голосов
/ 30 января 2009

Почему бы не использовать JAAS ? Это стандартная часть JRE с 1.4.

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