0

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

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

  • 只有员工和经理可以访问employee.jsp 页面

  • 只有管​​理员可以访问 manager.jsp 页面

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

谢谢。

环境:

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

1 回答 1

3

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

OpenAM 将从该“数据存储组”中抽象出来并构建和“OpenAM 组”。

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

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

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

此外,代理调试日志(级别设置为“消息”)会告诉您是否以及如何完成映射。

于 2012-10-12T09:25:11.647 回答