Web容器管理安全的常见替代方案?

时间:2012-05-22 19:52:14

标签: tomcat websphere security

使用Tomcat(或Websphere)容器管理的安全性的常见替代方法是什么?

我有一个令人不快的安全库,它从多个地方提取授权和身份验证,最初将在Tomcat上进行早期开发,然后在Websphere上进行后期开发和生产。而不是hack-a-doo需要通过JAAS为Tomcat设置自定义域,然后在WAS上进行另一次黑客攻击,那么有没有常见的替代方案?

我只在Tomcat上做过基于域的安全性。我已经看到了一些有趣的家酿方法,例如在会话http://www.vitarara.org/cms/struts_2_cookbook/creating_a_login_interceptor中监视用户对象。我也很好奇wiki页面(例如)与http://host.com/view.jsp?a_wiki_page如何设法保持角色直接,因为这似乎是wiki和bbs通常需要的,也许这是我的解决方案?

有什么建议吗?

2 个答案:

答案 0 :(得分:3)

Spring Security是一种流行的选择:

http://www.springsource.org/spring-security

答案 1 :(得分:1)

Spring Security提供了一种全面的,与容器无关的方法,我已成功地在WebSphere和Tomcat上使用(特别是在Tomcat上构建/测试并在WebSphere上进行部署)。

我真正喜欢的框架是它为您提供了一个以应用程序为中心的,源代码中立的当前用户及其在应用程序中的权限。这意味着您可以从任何地方加载用户和权限,只需要关注配置来源(LDAP,数据库,属性文件,内存中测试对象,SAML断言等)

它还为您提供了许多细粒度的授权控制(基于URL和基于方法),您只是在Java EE Security中没有定义。您可以使用正则表达式和Ant样式表达式进行模式匹配,否则您将无法使用它们。表达式语法也很丰富。如果您需要执行特定于数据的访问控制,则可以使用DDL添加到数据库并直接集成到您的安全性中。

Spring Security使用“/ *”URL映射(或您选择保护的任何映射)过滤所有对Web容器的请求。