用户正在使用JAAS访问受限制的Web应用程序(在Glassfish 2.1上)。使用LDAPRealm,并且从LDAP成功执行身份验证。应为用户安装密码策略,以便强制他们更改密码,使用某些复杂/长度的密码,密码失败和最后N个密码。使用的LDAP服务器的密码策略(OpenDS)支持所有这些,但是在我们使用的JAAS FORM登录中如何接收这种信息并不明显,因此信息(即“请更改密码”)可以是显示给用户。
您有任何想法如何实施吗?仅使用数据库不是一个选项,用户需要在LDAP中。不明显的是,是否完全使用LDAP密码策略,或者是否在我们的Web应用程序中对其进行了编程。我想避免这种情况并使用LDAP的本机密码策略。
感谢您的回答和问候, 博若
答案 0 :(得分:1)
不幸的是,使用JAAS可以做的事情仅限于任何登录系统都可以支持的一小组操作。虽然LDAP支持密码策略,但其他登录系统(例如密钥库)可能不支持,因此JAAS不能拥有需要密码的代码。
因此,您必须使用JNDI或this library from Novell直接与LDAP服务器通信。
答案 1 :(得分:0)
知道了。必须使用SAM,因为您无法在Glassfish中的现有auth机制中收到LoginException(导致登录失败的原因)。 答案在这里:How to override j_security_check in glassfish?