在java Web应用程序中自定义登录过程

时间:2009-04-05 21:43:14

标签: java authentication java-ee login jaas

我正在编写一个需要执行异常登录过程的java应用程序。我的一个问题是用户需要提供的不仅仅是简单的用户名/密码组合。具体而言,需要用户名/密码/域组合。

另一个问题是我的应用程序强制执行一些密码生存期规则(例如:密码在90天后变为无效)。我使用的身份验证服务器将在密码过期时拒绝身份验证并强制用户选择新密码。因此,我的登录过程必须能够处理。

不幸的是,标准的j_security_check servlet不允许我执行任何操作。有没有办法为java Web应用程序创建自定义和安全的登录过程。

注意:提供域的问题可以通过让用户在j_username字段中输入username \ domain而不仅仅是username来解决,然后让自定义域解码。然而,这有点笨拙,无论如何都无法解决第二个问题。

2 个答案:

答案 0 :(得分:3)

你在考虑Spring security吗? These是关于密码过期的一些建议。

答案 1 :(得分:2)

JAAS安全界面允许您创建自定义登录模块。此大厅模块将允许您进行任何您喜欢的安全检查。我建议您查看有关JAAS的信息。 0

以下是我用来帮助理解JAAS的一些链接:

http://www.owasp.org/index.php/JAAS_Tomcat_Login_Module

http://www.javaworld.com/jw-09-2002/jw-0913-jaas.html

http://www.jaasbook.com/

http://roneiv.wordpress.com/2008/02/18/jaas-authentication-mechanism-is-it-possible-to-force-j_security_check-to-go-to-a-specific-page/

另请参阅Apache tomcat领域配置方法:

http://tomcat.apache.org/tomcat-6.0-doc/realm-howto.html