使用信任关联拦截器 ++ 配置单点登录
执行本任务以使用信任关联拦截器 ++ 启用单点登录。这些步骤包括设置信任关联和创建拦截器属性。
开始之前
虽然可以通过在“认证机制和到期”面板上选择在服务器之间使用非 SWAM 认证通信选项来使用简单 WebSphere® 认证机制 (SWAM),但单点登录 (SSO) 要求使用 LTPA 作为配置的认证机制。
轻量级第三方认证 (LTPA) 是 WebSphere Application Server 的缺省认证机制。通过单击安全性 > 全局安全性 > 认证机制和到期,可以在配置单点登录 (SSO) 前配置 LTPA。
要为单点登录建立信任关联,请执行以下步骤:
过程
- 在 WebSphere Application Server 的管理控制台中,单击安全性全局安全性。
- 在“Web 安全性”下,单击信任关联。
- 单击启用信任关联。
- 单击拦截器。
- 单击 com.ibm.ws.security.web.TAMTrustAssociationInterceptorPlus 以使用 WebSEAL 拦截器。 此拦截器是提供给您使用的两个 WebSEAL 拦截器中的一个。通过如下一步骤中所述的那样提供属性来选择使用此拦截器。注意: 即使您只为 com.ibm.ws.security.web.TAMTrustAssociationInterceptorPlus 拦截器提供了属性,WebSphere Application Server 仍会尝试对这两个拦截器进行初始化。因此,在初始化期间会显示消息 AWXRB0008E 和 SECJ0384E,指示您未选择的拦截器无法初始化。这是正常的处理过程,不会影响对您所选择的拦截器进行初始化。要禁止显示消息 AWXRB0008E 和 SECJ0384E,您可以在开始初始化之前删除不需要使用的拦截器。如果稍后环境有所变化,那么重新添加那个拦截器。
- 单击定制属性。
- 单击新建,输入属性名和值对。 确保设置了下列参数:
表 1. 定制属性. 此表描述 TAI 定制属性。
选项 描述 com.ibm.websphere.security. webseal.checkViaHeader
可以配置 TAI,以便在为请求验证信任时可以忽略 via 头。如果不需要信任 via 头中的主机,那么将此属性设置为 false。设置为 false 时,您不需要设置可信的主机名和主机端口属性。当 via 头为 false 时唯一要检查的强制属性是 com.ibm.websphere.security.webseal.loginId。 检查 via 头属性的缺省值是 false。将 Tivoli® Access Manager 插件用于 Web 服务器时,请将此属性设置为 false。
注: via 头是标准 HTTP 头的一部分,它记录请求已通过的服务器名。com.ibm.websphere.security. webseal.loginId
WebSEAL 信任用户是在在 Tivoli Access Manager 中创建可信用户帐户中创建的。用户名的格式是短名称表示法。此属性是必需的。如果未在 WebSphere Application Server 中设置该属性,那么 TAI 初始化会失败。 com.ibm.websphere.security. webseal.id
请求中存在的以逗号分隔的头列表。如果请求中并非存在所有已配置头,那么不能建立信任。标识属性的缺省值是 iv-creds。WebSphere Application Server 中设置的任何其他值与 iv-creds 一起添加到列表中,由逗号分隔。 com.ibm.websphere.security. webseal.hostnames
如果要将 Tivoli Access Manager 插件用于 Web 服务器,那么不要设置此属性。该属性指定可信并且在请求头中需要的主机名(区分大小写)。从未列示的主机到达的请求可能不可信。如果 checkViaHeader 属性未设置或设置为 false,那么可信的主机名属性没有影响。如果 checkViaHeader 属性设置为 true,而可信主机名属性未设置,那么 TAI 初始化将失败。 com.ibm.websphere.security. webseal.ports
如果要将 Tivoli Access Manager 插件用于 Web 服务器,那么不要设置此属性。此属性是以逗号分隔的可信主机端口列表。从未列示端口到达的请求可能不可信。如果 checkViaHeader 属性未设置或设置为 false,那么此属性没有影响。如果 checkViaHeader 属性设置为 true,而 WebSphere Application Server 中的可信主机端口属性未设置,那么 TAI 初始化会失败。 com.ibm.websphere.security. webseal.viaDepth
一个正整数,它指定 via 头中要检查信任的源主机数。缺省情况下,将检查 via 头中的每个主机,如果有任何主机不可信,那么不能建立信任。当仅需要信任 via 头中的某些主机时,将使用 via 深度属性。该设置指示需要信任的主机(从头的右端开始)数目。 作为示例,请考虑以下头:
Via: HTTP/1.1 webseal1:7002, 1.1 webseal2:7001
如果 viaDepth 属性未设置、设置为 2 或设置为 0,且接收到具有先前 via 头的请求,那么需要信任 webseal1:7002 和 webseal2:7001。将应用以下配置:
com.ibm.websphere.security.webseal.hostnames = webseal1,webseal2 com.ibm.websphere.security.webseal.ports = 7002,7001
如果 via 深度属性设置为 1 且接收到先前的请求,那么只需要信任 via 头中的最后一个主机。将应用以下配置:
com.ibm.websphere.security.webseal.hostnames = webseal2 com.ibm.websphere.security.webseal.ports = 7001
缺省情况下,viaDepth 属性设置为 0,这意味着将检查 via 头中所有主机的信任。
com.ibm.websphere.security. webseal.ssoPwdExpiry
在为请求建立信任后,将高速缓存单点登录用户密码,这样 TAI 就不需要使用 Tivoli Access Manager 对单点登录用户的每个请求进行重新认证。通过将单点登录密码到期属性设置为必需的时间(以秒计),可以修改高速缓存超时周期。如果密码到期属性设置为 0,那么高速缓存的密码永不到期。密码到期属性的缺省值是 600。 com.ibm.websphere.security. webseal.ignoreProxy
此属性可用于通知 TAI 不将代理计为可信主机。如果将它设置为 true,那么会检查 via 头中主机条目的注释字段,以确定主机是否是代理。请记住,并非所有代理都会在 via 头中插入注释来表明它们是代理。ignoreProxy 属性的缺省值为 false。如果 checkViaHeader 属性设置为 false,那么 ignoreProxy 属性对建立信任没有影响。 com.ibm.websphere.security. webseal.configURL
要使 TAI 为请求建立信任,TAI 要求在应用程序服务器上对 Java™ 虚拟机运行 SvrSslCfg 并因此创建属性文件。如果此属性文件不是位于缺省 URL 处(缺省 URL 为 file://java.home/PdPerm.properties),那么必须在配置 URL 属性中设置此属性文件的正确 URL。如果未设置此属性,或 SvrSslCfg 生成的属性文件不在缺省位置,那么 TAI 初始化会失败。配置 URL 属性的缺省值是 file://$WAS_HOME/java/jre/PdPerm.properties。
将此属性设置为 profile_root/etc/pd/PolicyDirector/PDPerm.properties。 要 TAI 为请求建立信任,它要求 PDPerm.properties 文件在单元内每个节点中都存在。并且,必须在配置 URL 属性中设置此属性文件的正确 URL。如果未设置此属性,或 PDPerm.properties 文件不在指定位置,那么 TAI 初始化会失败。PDPerm.properties 文件是节点的 Tivoli Access Manager 配置的一部分。要创建 Tivoli Access Manager 配置,请对单元中的每个节点先运行 pdjrtecfg 脚本,然后再运行 svrsslcfg 脚本。PDPerm.properties 文件是在 profile_root/etc/pd/PolicyDirector/ 目录中创建的。
- 单击确定。
- 保存此配置并注销。
- 重新启动 WebSphere Application Server。


http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=tsec_ssowsstep4TAIplusplus
文件名:tsec_ssowsstep4TAIplusplus.html