我们正在用Java构建一个O&M框架,它将支持基于Web的GUI和基于控制台的CLI.之后,它也将支持GUI,可以使用手持设备(Andriod应用程序等)访问.我需要决定使用哪个开源java安全框架来生成这个产品.
我的要求如下:
安全框架应该与容器无关:我应该能够从Java EE服务器,Tomcat Web容器,Java SE中的POJO等访问它
安全框架必须提供基于身份验证和角色的授权(RBAC)服务
在某些部署中,我们的运营商可能会要求我们指向其LDAP服务器以获取用户凭据和角色,因此需要LDAP支持
密码强度控制,密码老化,如果未登录N天自动锁定帐户,每N天自动更改密码,强加密支持,渠道安全,单点登录等都是必需的功能
开源项目必须在论坛中保持活跃且得到良好支持,并且必须在实践中遵守最新的安全标准
安全相关数据将存储在各种数据存储中,即HBase,Cassandra等.因此,安全框架必须是可扩展的,以便从不同的数据存储中读取数据(或者基于JPA等)
我开始关注Spring Security.不确定它是否能满足要求(1)并且我还阅读了一些非常重且难以使用的反馈,并且它也只能用于基于Spring的应用程序.我们的应用程序不是基于Spring的
Apache Shiro怎么样?它符合我上面所需的一切吗?