SPNEGO TAI 的单点登录功能 - 核对表(不推荐)
WebSphere® Application Server 提供了一个信任关联拦截器 (TAI),TAI 使用简单且受保护的 GSS-API 协商机制 (SPNEGO) 来对 WebSphere Application Server 中安全资源的 HTTP 请求进行安全地协商和认证。要部署和使用 SPNEGO TAI,您需要检查您的安装并决定如何配置 SPNEGO TAI 才最合适。

在 WebSphere Application Server V6.1 中引入了一个信任关联拦截器 (TAI),TAI 使用“简单且受保护的 GSS-API 协商机制” (SPNEGO) 来对安全资源的 HTTP 请求进行安全地协商和认证。现在,WebSphere Application Server 7.0 中已不推荐使用此功能。SPNEGO Web 认证已取代该 TAI,以提供动态重新装入 SPNEGO 过滤器的功能以及对应用程序登录方法启用回退。
depfeat- 拦截 HTTP 请求的条件是什么?
您必须决定 SPNEGO TAI 部署是否在缺省情况下使用 HTTPHeaderFilter 类。如果您使用此类,那么必须为此类指定确切的过滤器属性。SPNEGO TAI 的缺省行为是使用 com.ibm.ws.spnego.HTTPHeaderFilter 类来拦截所有请求。
如果您不使用样本 com.ibm.ws.spnego.HTTPHeaderFilter 类,那么必须定义实现 com.ibm.wsspi.security.spnego.SpnegoTAIFilter 接口的新类。
您可以决定进一步控制使用服务提供程序编程接口 (SPI) 所拦截的 HTTP 请求,过滤 SPNEGO TAI 的 HTTP 请求(不推荐)
请参阅 SPNEGO TAI 定制属性配置(不推荐),以了解以下各项的描述:- com.ibm.ws.security.spnego.SPN<id>.filterClass
- com.ibm.ws.security.spnego.SPN<id>.filter
- 要使用用户标识映射吗?如果不使用,那么原因是什么?
WebSphere Application Server 使您能够定义或开发定制登录模块来映射用户标识。请参阅将 Kerberos 客户机主体名称映射至 SPNEGO TAI 的 WebSphere 用户注册表标识(不推荐)。,以了解关于执行此映射的更多详细信息。
在部署 TAI 之前,您必须决定是否使用此定制登录模块来执行 SPNEGO TAI 标识映射。
- 要使用什么类型的加密来处理 SPNEGO 令牌?Microsoft Windows Active Directory 支持两种不同的 Kerberos 加密类型:RC4-HMAC 和 DES-CBC-MD5。IBM® Java™ 类属安全性服务 (JGSS) 库(和 SPNEGO 库)支持这两种加密类型。限制: 只有 Windows 2003 Server 密钥分发中心 (KDC) 才支持 RC4-HMAC 加密。
- 将如何处理凭证委派?
Kerberos 支持对凭证进行委派。从客户机接收到 Kerberos 凭证的服务器可以通过使用委派的凭证对其他服务器模拟该客户机。因为 SPNEGO TAI 令牌是 Kerberos 凭证的包装,所以接收到 SPNEGO 令牌内的 Kerberos 凭证的服务器可以使用这些 Kerberos 凭证来模拟原始用户。该服务器通过构成适当的 HTTP 授权头,就可以使用 SPNEGO over HTTP 以 SPNEGO 客户机的身份与其他 SPNEGO 服务器交互。
- 将在单领域名服务 (DNS) 域环境还是在多领域名服务 (DNS) 域环境中部署 SPNEGO TAI?
在 Windows 上运行的 Web 浏览器对 DNS 域是敏感的。仅当目标主机名标识客户端机器的 DNS 域中定义的主机名时,这些浏览器才会发送 SPNEGO 令牌。您可以使用 HTTP 重定向通过在每个 DNS 域中创建一个伪 Kerberos 服务主体名称 (SPN) 来支持此配置。WebSphere Application Server 支持的所有 SPN 必须在 Kerberos 密钥表文件中提供它们的密钥。为了启用跨多个 DNS 域的单点登录,将为每个域的每个 SPN 生成一个独立的 Kerberos 密钥表文件。必须合并这些单独的 Kerberos 密钥表文件,然后 WebSphere Application Server 才能使用这些文件。
- 应用程序服务器重新装入 SPNEGO TAI 属性的频率?
SPNEGO TAI 具有一个可选的属性重新装入功能,该功能允许重新装入 TAI 属性而无需重新启动 Java 虚拟机 (JVM)。此重新装入功能由系统属性 com.ibm.ws.security.spnego.propertyReloadFile 和 com.ibm.ws.security.spnego.propertyReloadTimeout 控制。采用的这些属性一起使得在某个时间段之后能够从文件系统中的文件重新装入 SPNEGO TAI 内部属性。如果 com.ibm.ws.security.spnego.propertyReloadTimeout 属性被设置为有效的整数值,且 com.ibm.ws.security.spnego.propertyReloadFile 属性指向文件系统上某个的文件,那么每个 JVM 在超时周期到期之后从该文件中重新装入 SPNEGO TAI 属性。并且,仅当该文件的日期已更改时,才会重新装入 SPNEGO TAI 属性。如果未设置这些重新装入属性,那么只会在 JVM 初始化时从 WebSphere Application Server 配置数据中定义的 SPNEGO TAI 定制属性装入一次 SPNEGO TAI 属性。请参阅 SPNEGO TAI JVM 配置定制属性(不推荐),以了解有关这些重新装入属性的更多信息。
Windows Active Directory (Web) 管理员、WebSphere Application Server 管理员和应用程序小组复审并回答这些问题,以确定 SPNEGO TAI 的最佳部署和配置设置。