[V5.1.1 及更高版本]Java 认证和授权服务的系统登录配置条目设置

使用此页面指定 Java 认证和授权服务(JAAS)系统登录配置的列表。

要查看此管理控制台页面,单击安全性 > JAAS 配置 > 系统登录

在您开始为向 WebSphere Application Server 安全性运行时认证定义其它的登录模块之前,请阅读 Java 认证和授权服务。不要除去下列系统登录模块:

RMI_INBOUND、WEB_INBOUND、DEFAULT
处理远程方法调用(RMI)、Web 应用程序和大多数其它登录协议的入站登录请求。这些登录配置由 WebSphere Application Server V5.1.1 使用
RMI_INBOUND
RMI_INBOUND 登录配置为入站 RMI 请求处理登录。通常,这些登录是对 EJB 文件的已认证访问的请求。 另外,当使用 RMI 连接器时,这些登录也可能是 Java 管理扩展(JMX)请求。
WEB_INBOUND
WEB_INBOUND 登录配置为 Web 应用程序请求(包括 servlet 和 JavaServer pages(JSP))处理登录。如果配置了该登录配置,那么它可以与信任关联拦截器(TAI)生成的输出进行交互。传递到 WEB_INBOUND 登录配置的主题可能包含 TAI 生成的对象。
DEFAULT
DEFAULT 登录配置为大多数其它协议和内部认证产生的入站请求处理登录。

这三个登录配置可以传入下列回调信息,它是由这些配置中的登录模块处理的。这些回调不是同时传入的。然而,这些回调的组合确定 WebSphere Application Server 如何认证用户。

回调 职责
callbacks[0] = new javax.security.auth.callback.NameCallback("Username:"); 收集在登录期间提供的用户名。该信息可以是下列登录类型的用户名:
  • 用户名和密码登录,这被认为是基本认证。
  • 仅用于身份声明的用户名。
callbacks[1] = new javax.security.auth.callback.PasswordCallback("Password: ", false); 收集在登录期间提供的密码。
callbacks[2] = new com.ibm.websphere.security.auth.callback.WSCredTokenCallbackImpl("Credential Token: "); 收集登录期间的轻量级第三方认证(LTPA)令牌(或其它令牌类型)。通常,当用户名和密码不存在时,该信息还存在。
callbacks[3] = new com.ibm.wsspi.security.auth.callback.WSTokenHolderCallback("Authz Token List: "); 收集对 WSOpaqueTokenHelper 调用返回的 TokenHolder 对象的 ArrayList。createTokenHolderListFromOpaqueToken () 方法使用 Common Secure Interoperability version 2 (CSIv2) 授权令牌作为输入。


在系统登录配置中,WebSphere Application Server 根据回调收集的信息认证用户。然而,定制登录模块不需要对这些回调进行操作。以下列表说明这些回调的典型组合:

除了先前定义的回调之外,WEB_INBOUND 登录配置仅可以包含下列其它回调

回调 职责
callbacks[4] = new com.ibm.websphere.security.auth.callback.WSServletRequestCallback("HttpServletRequest: "); 收集 HTTP servlet 请求对象(如果存在的话)。 该回调允许登录模块检索来自 HTTP 请求的信息以在登录期间使用。
callbacks[5] = new com.ibm.websphere.security.auth.callback.WSServletResponseCallback("HttpServletResponse: "); 收集 HTTP servlet 响应对象(如果存在的话)。 该回调允许登录模块作为登录结果把信息添加到 HTTP 响应中。例如,登录模块可能把 SingleSignonCookie 添加到响应。
callbacks[6] = new com.ibm.websphere.security.auth.callback.WSAppContextCallback("ApplicationContextCallback: "); 收集在登录期间使用的 Web 应用程序上下文。该回调包括 HashMap,其包含应用程序名称和重定向 Web 地址(如果存在的话)。


下列登录模块是为 RMI_INBOUND、WEB_INBOUND 和 DEFAULT 系统登录配置预定义的。您可以在任何这些登录模块的前面、中间或后面添加定制登录模块,但您无法除去这些预定义的登录模块。

RMI_OUTBOUND
com.ibm.CSI.rmiOutboundLoginEnabledcom.ibm.CSIOutboundPropagationEnabled 属性为真时,它处理向外发送到另一台服务器的 RMI 请求。

这些属性在 CSIv2 认证面板中设置。要访问该面板,单击安全性 > 认证协议 > CSIv2 出站认证。要设置 com.ibm.CSI.rmiOutboundLoginEnabled 属性,选择定制出站映射。要设置 com.ibm.CSIOutboundPropagationEnabled 属性,选择安全性属性传递

该登录配置确定目标服务器的安全性能力和它的安全性域。例如,如果 WebSphere Application Server V5.1.1 与 V5.x 应用程序服务器进行通信,则 V5.1.1 应用程序服务器使用 LTPA 令牌把认证信息发送到 V5.x 应用程序服务器。然而,如果 WebSphere Application Server V5.1.1 与 V5.1.x 应用程序服务器进行通信,则认证和授权信息被发送到接收应用程序服务器(如果在发送和接收服务器上都启用了传播的话)。

RMI_OUTBOUND 登录配置中可以使用以下回调。您可以使用该回调返回的 com.ibm.wsspi.security.csiv2.CSIv2PerformPolicy 对象来查询此特定出站请求的安全策略。此查询可以帮助确定目标域是否与当前域不相同,以及 WebSphere Application Server 是否必须映射该域。 要获取更多的信息,请参阅“配置出站映射到不同的目标域”。

回调 职责
callbacks[0] = new WSProtocolPolicyCallback("Protocol Policy Callback: ");

为该出站调用上的登录模块提供特定于协议的策略信息。该信息用于确定安全性的级别,包括目标域、目标安全性需求以及合并的安全性需求。

以下方法从该特定的登录模块获取 CSIv2PerformPolicy:

csiv2PerformPolicy = (CSIv2PerformPolicy) 
((WSProtocolPolicyCallback)callbacks[0]).getProtocolPolicy();

除 RMI 之外的不同协议可能有不同类型的策略对象。



RMI_OUTBOUND 登录配置中预定义了以下登录模块。您可以在任何这些登录模块的前面、中间或后面添加定制登录模块,但您无法除去这些预定义的登录模块。

com.ibm.ws.security.lm.wsMapCSIv2OutboundLoginModule
在创建要被发送到另一台服务器(使用 Common Secure Interoperability version 2 (CSIv2) 授权令牌层)的不透明字节之前,检索下列令牌和对象:
  • 来自主题的可转发的 com.ibm.wsspi.security.token.Token 实现
  • 来自主题的可序列化的定制对象
  • 来自线程的传播令牌

您可以在该登录模块前使用定制登录模块来执行凭证映射。然而,建议登录模块更改在登录阶段中传入的主题的内容。如果您采纳了该建议,则在该登录模块后面处理的登录模块作用于新的主题内容。

SWAM
当 SWAM 用作认证方法时,处理单服务器环境中的登录请求。

简单 WebSphere 认证机制(SWAM)不支持可转发的凭证。当 SWAM 作为认证方法时,WebSphere Application Server 无法在服务器之间发送请求。在这种情况下,您必须使用 LTPA。

wssecurity.IDAssertion
使用身份声明处理 Web service 安全性的登录配置请求。
wssecurity.signature
使用数字签名验证来处理 Web service 安全性的登录配置请求。
LTPA_WEB
处理由 Web 容器(如 servlet、JavaServer pages)使用的登录请求。

WebSphere Application Server V5.1 和更早的版本使用该登录配置。

LTPA 登录配置中预定义了 com.ibm.ws.security.web.AuthenLoginModule 登录模块。您可以在 LTPA_WEB 登录配置中,在该模块的前面或后面添加定制登录模块。

LTPA_WEB 登录配置可以处理使用回调处理程序传入的 HttpServletRequest 对象、HttpServletResponse 对象和 Web 应用程序名称。要获取更多信息,请参阅文档中的“定制服务器端 Java 认证和授权服务认证和登录配置”。

LTPA
处理不是由 LTPA_WEB 登录配置处理的登录请求。

WebSphere Application Server V5.1 和更早的版本使用该登录配置。

LTPA 登录配置中预定义了 com.ibm.ws.security.server.lm.ltpaLoginModule 登录模块。您可以在 LTPA 登录配置中,在该模块的前面或后面添加定制登录模块。要获取更多信息,请参阅文档中的“定制服务器端 Java 认证和授权服务认证和登录配置”。

相关信息

管理控制台按钮
管理控制台页面功能
管理控制台范围设置
管理控制台过滤器设置
管理控制台首选项设置
Java 认证和授权服务的配置条目设置