用于授权的OpenAM Tomcat J2EE代理配置

时间:2012-10-04 01:29:33

标签: tomcat authorization policy opensso openam

我想将授权配置为使用OpenAM在Tomcat 6中暂存的测试webapp。最终目标/用例类似于:

  • 用户bob属于组员工
  • 用户john属于群组管理员

  • 只有员工和经理才能访问employee.jsp页面

  • 只有经理可以访问manager.jsp页面

我在身份验证文件上找到了大量文档,并在我的环境中正确配置了该文档。 在登录之前,我可以访问“公共”页面(未强制执行uri我已配置),但是一旦我尝试访问受保护的页面(如“employee.jsp”),我就会被重定向到OpenAM的登录模块并且必须进行身份验证。我可以作为属于组员工的bob进行身份验证(后备用户存储是一个活动目录),但在重定向后我仍然被拒绝访问。如何为此配置访问权限?部署用于保护此资源的策略代理是j2ee_agent。 Web代理似乎更相关,但我收集了为Tomcat部署的j2ee代理。有什么想法吗?

感谢。

环境:

  • 在tomcat 6中部署的webapp在Windows 2008服务器上进行,使用AD
  • j2ee策略代理部署在同一个tomcat 6实例中,配置集中在服务器
  • 使用Windows 2008 Server AD作为用户存储在jboss 7中部署的单独linux盒上的openam服务器。

1 个答案:

答案 0 :(得分:3)

J2EE代理支持J2EE策略。在OpenAM使用的数据存储中,您必须将组分配给您选择的用户。

OpenAM将从'数据存储组'和构建以及'OpenAM组'中抽象出来。

您必须在部署容器特定部署描述符中为此“OpenAM组”配置映射到您的J2EE角色。

J2EE代理模式应该是'J2EE_POLICY'或'ALL'(后者要求在OpenAM中配置URL策略)。

您可以查看随J2EE代理提供的agentsample web-app。

代理调试日志(级别设置为'message')也会告诉您映射是否以及如何完成。