1.客户端AmConfig.properties中配置
com.sun.identity.agents.app.username=UrlAccessAgent
com.iplanet.am.service.password=
如果不配置,或配置错误会产生下面错误信息:
com.iplanet.sso.SSOException: AdminTokenAction: FATAL ERROR: Cannot obtain Application SSO token.
Check AMConfig.properties for the following properties
com.sun.identity.agents.app.username
com.iplanet.am.service.password
这个是配置客户端链接到服务器的帐号和密码。两种帐号:
1.amamdin的帐号密码
2.代理名称和帐号密码
在配置中:com.iplanet.am.service.secret= 配置的是加密的密码,没有加密则用com.iplanet.am.service.password。
2.配置代理服务器对URL过滤规则
通俗的说明下:当项目部署到代理服务器上时,默认这个项目的所有资源都被OpenAM拦截验证是否有权限访问。当然实际情况可能是网站上有几个页面或接口不需要验证就能访问,比如:注册接口。所以怎么设置呢?
1).配置全局或针对某个项目的过滤规则。在Access Control > Realm Name
> Agents > J2EE > Agent Name
> Global 下设置 代理过滤器模式 。
设置方法是copy OpenAM上的说明,值的意义自己总结:
设置方法:
指定过滤器的操作模式。
有效关键字:Web 应用程序的名称。
有效值:ALL、J2EE_POLICY、URL_POLICY、SSO_ONLY、NONE
对于该属性,可设置全局值以应用至所有自身没有特定过滤器模式的应用程序。
热交换:否
示例:
将 ALL 设置为全局过滤器模式:将“映射关键字”字段留空,然后在“对应的映射值”字段中输入 ALL
将 URL_POLICY 设置为应用程序 BankApp 的过滤器模式:在“映射关键字”字段中输入 BankApp,然后在“对应的映射值”字段中输入 URL_POLIC
值的意义:
ALL
执行保护应用程序运行在Web容器中定义的J2EE的策略。
当设置过滤模式为ALL,不设置Key,即为全局设置,默认就是全局设置。
J2EE_POLICY
执行仅适用于受保护的应用程序运行在Web容器中定义的J2EE策略。
NONE
不执行策略。换句话说,关闭访问管理。
SSO_ONLY
强制执行的唯一身份验证,不执行策略。
URL_POLICY
只有执行OpenAM,URL资源基础的策略。
2).配置非强制验证的URL。在 Access Control > Realm Name
> Agents > J2EE > Agent Name
> Application 下
在这里配置的路径可以不通过身份验证访问资源,可以使用通配符,通配符规则在 :
http://docs.forgerock.org/en/openam/11.0.0/admin-guide/index.html#configure-j2ee-pa-global-props
3.配置自定义登录、退出页面
OpenAM的登录页面路径:\webapp\config\auth\default
中文平台路径:\webapp\config\auth\default_ZH_CN
登录页面:Login.jsp
退出登录页面:Logout.jsp
登录失败页面:login_failed_template.jsp
4.代理服务器和OpenAM服务器重启顺序
Open服务器--->代理服务器。
不能单独重启OpenAM服务器,当OpenAm服务器重启后,必须再重启代理服务器。否则访问代理服务器会出现循环重定向的错误。