#spring #authentication #authorization #openldap #opensso
#spring #аутентификация #авторизация #openldap #opensso
Вопрос:
В нашей организации мы разрабатываем аутентификацию на основе ldap и авторизацию с функцией единого входа в систему. После разработки этого универсального модуля появятся десятки других модулей, которые будут зависеть от него. Наборы инструментов являются —
- Spring
- Переход в спящий режим
- Tomcat 7
- OpenAM / OpenSSO
- openldap
- postgresql
У нас будет простой механизм аутентификации, но очень сложная схема авторизации. Мы не уверены, какой подход будет правильным для авторизации. Должны ли мы поместить аутентификацию, а также логику авторизации в LDAP или мы должны использовать ее только для аутентификации? В этом случае нам придется повозиться с OpenAM / OpenSSO. Есть ли какой-либо другой подход? например, spring security, CAS, JOSSO, .. ? Каким бы ни был подход, он должен быть очень масштабируемым и обслуживаемым. Мы будем признательны за любое предложение или помощь.
Спасибо, Назрул
Комментарии:
1. 1 год 0 принятых ответов = никакой помощи.
Ответ №1:
Вы можете взглянуть на Apache Shiro:http://shiro.apache.org . Это простая в использовании платформа безопасности, которая поддерживает большинство существующих технологий безопасности, включая LDAP и единый вход.
Кроме того, с помощью подтипов AuthenticatingRealm и AuthorizingRealm (из Shiro API) вы можете реализовать свои стратегии аутентификации и авторизации, независимо от того, насколько они сложны.
Чаще всего вы будете реализовывать свои собственные:
-
AuthenticatingRealm
-
AuthorizingRealm
-
AuthenticationToken
-
Authozationtoken
-
PremissionResolver
и так далее…
Ответ №2:
Вероятно, вы хотели бы взглянуть на это, прежде чем двигаться дальше в принятии какого-либо решения. http://grzegorzborkowski.blogspot.com/2008/10/spring-security-acl-very-basic-tutorial.html
Ответ №3:
Для авторизации вы можете обратиться к внешним фреймворкам авторизации на основе XACML, расширяемого языка разметки управления доступом.
Это стандарт OASIS, который реализует управление доступом на основе атрибутов, что дает вам большую гибкость при разработке вашей авторизации.