Web Service 安全定制属性
可以配置数据的“名称/值”对,其中名称是属性关键字而值是字符串值,可以使用这些“名称/值”对来设置内部系统配置属性。通过定义新属性,就能够配置除管理控制台中选项所提供的设置以外的设置。
可以在应用程序服务器的各种级别设置 Web Service 安全性的定制属性,还可以设置 JAX-RPC 应用程序与 JAX-WS 应用程序的定制属性。以下定制属性列表提供了有关在何处设置定制属性以及如何使用定制属性的信息。
在其他信息主题中说明了 Web Service 安全性通用安全性令牌登录模块定制属性和 Web Service 安全性 SAML 令牌定制属性。在本主题的“相关参考”部分提供了指向这些主题的链接。
可以定义下列 Web Service 安全性定制属性:
- com.ibm.websvcs.client.serializeSecurityContext
- com.ibm.ws.wssecurity.createSTR
- com.ibm.ws.wssecurity.dsig.SignatureAlgorithm
- com.ibm.ws.wssecurity.sc.FaultCode
- com.ibm.wsspi.wssecurity.Caller.assertionLoginConfig
- com.ibm.wsspi.wssecurity.config.disableWSSIfApplicationSecurityDisabled
- com.ibm.wsspi.wssecurity.config.gen.checkCacheUsernameTokens
- com.ibm.wsspi.wssecurity.config.request.setMustUnderstand 和 com.ibm.wsspi.wssecurity.config.response.forceMustUnderstandEqualsOne
- com.ibm.wsspi.wssecurity.config.token.inbound.retryOnceAfterTrustFailure
- com.ibm.wsspi.wssecurity.consumer.timestampRequired
- com.ibm.wsspi.wssecurity.dsig.inclusiveNamespaces
- com.ibm.wsspi.wssecurity.dsig.oldEnvelopedSignature
- com.ibm.wsspi.wssecurity.enc.MTOM.Optimize
- com.ibm.wsspi.wssecurity.generator.useWSSObject
- com.ibm.wsspi.wssecurity.krbtoken.clientRealm
- com.ibm.wsspi.wssecurity.krbtoken.loginPrompt
- com.ibm.wsspi.wssecurity.login.useSoap12FaultCodes
- com.ibm.wsspi.wssecurity.nonce.includeEncodingType
- com.ibm.wsspi.wssecurity.token.cert.useRequestorCert
- com.ibm.wsspi.wssecurity.token.enableCaptureTokenContext
- com.ibm.wsspi.wssecurity.token.enableCaptureTokenInboundMsg
- com.ibm.wsspi.wssecurity.token.forwardable
- com.ibm.wsspi.wssecurity.token.IDAssertion.isUsed
- com.ibm.wsspi.wssecurity.token.IDAssertion.useRunAsIdentity
- com.ibm.wsspi.wssecurity.token.username.addNonce 和 com.ibm.wsspi.wssecurity.token.username.addTimestamp
- com.ibm.wsspi.wssecurity.token.username.emitPasswordDigest
- com.ibm.wsspi.wssecurity.token.username.password.forwardable
- com.ibm.wsspi.wssecurity.token.username.verifyNonce 和 com.ibm.wsspi.wssecurity.token.username.verifyTimestamp
- com.ibm.wsspi.wssecurity.token.UsernameToken.digestPasswordCallbackHandler
- com.ibm.wsspi.wssecurity.token.UsernameToken.disableUserRegistryCheck
- com.ibm.wsspi.wssecurity.auth.module.UsernameLoginModule.disableUserRegistryCheck
- com.ibm.wsspi.wssecurity.tokenGenerator.ltpav1.pre.v7
- com.ibm.wsspi.wssecurity.useMTOMWithCustomComponents
com.ibm.websvcs.client.serializeSecurityContext
javax.xml.ws.BindingProvider bp;
bp.getRequestContext().put("com.ibm.websvcs.client.serializeSecurityContext", "false");
信息 | 值 |
---|---|
数据类型 | 字符串 |
值 | true 和 false |
缺省值 | True |
com.ibm.ws.wssecurity.createSTR
当您将 com.ibm.ws.wssecurity.createSTR 属性的值指定为 True 时,此属性将创建对于 SOAP 安全性头中的安全性令牌的安全性令牌引用。
- 令牌签名的引用机制是 STR 取消引用变换 (http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-soap-message-security-1.0#STR-Transform)
- WS-Security 策略的 SignedParts 元素包含一个用于表示 SecurityTokenReference 的 XPath 值。
此属性配置为 SAML 令牌生成者上的定制属性。它不在回调处理程序上配置。
信息 | 值 |
---|---|
数据类型 | 字符串 |
值 | true 和 false |
缺省值 | False |
此属性的值不区分大小写。
com.ibm.ws.wssecurity.dsig.SignatureAlgorithm
通过使用此定制属性来配置数字签名,您可以使 Web Service 安全性运行时能够使用 SHA-2 签名算法。
对于 JAX-WS 应用程序,在请求或响应的签名信息部分设置以下定制属性以启用 SHA-2 签名算法。配置此定制属性时,请确保对客户机和提供程序使用同一个值。
信息 | 值 |
---|---|
数据类型 | 字符串 |
值 | rsa-sha256、rsa-sha384、rsa-sha512、hmac-sha256、hmac-sha384、hmac-sha512 或 dsa-sha256 |
- 单击服务提供程序。 或者
- 单击 。
- 在策略下,单击 WS-Security。
- 在消息安全策略绑定下,单击认证和保护。
- 在请求消息签名和加密保护或者响应消息签名和加密保护下,单击 signature_message_part_reference。
当您选择 signature_message_part_reference 名称时,您会访问已签名的消息部件绑定的配置。
- 指定定制属性(例如,com.ibm.ws.wssecurity.dsig.SignatureAlgorithm),并可以选择前一个表中所标识的其中一个值,从而以属性值形式输入所需要的算法。
com.ibm.ws.wssecurity.sc.FaultCode
在 JAAS 登录模块中使用此定制属性来设置发生错误时产生的 SOAP 故障代码。如果未指定此属性,那么始终会返回 SOAP 故障代码 wsse:FailedAuthentication。
在定制 JAAS 登录模块中,将 wssecurity 上下文中的 com.ibm.ws.wssecurity.sc.FaultCode 属性设置为您要使用的故障代码的 QName。例如:
fcQname = new QName(
"http://schemas.xmlsoap.org/ws/2003/06/secext",
"FailedCheck");
this._context = propertyCallback.getProperties();
_context.put("com.ibm.ws.wssecurity.sc.FaultCode", fcQname);
信息 | 值 |
---|---|
数据类型 | 字符串 |
缺省值 | none |
com.ibm.wsspi.wssecurity.Caller.assertionLoginConfig
com.ibm.wsspi.wssecurity.Caller.assertionLoginConfig 属性(可在调用者部分进行配置)指定 Web Service 安全性用来获取 WebSphere Application Server 授权凭证的 JAAS 登录配置的名称。必须使用诸如 Rational® Application Developer 之类的组装工具来配置此属性。有关更多信息,请参阅 Rational Application Developer 的“在使用者安全性约束中配置调用者”主题。在本主题中,会在您配置身份断言时设置此定制属性。
此属性只能用于 WS-Security V1.0 JAX-RPC 应用程序。
信息 | 值 |
---|---|
数据类型 | 字符串 |
缺省值 | system.DEFAULT |
com.ibm.wsspi.wssecurity.config.disableWSSIfApplicationSecurityDisabled
当您将 com.ibm.wsspi.wssecurity.config.disableWSSIfApplicationSecurityDisabled 定制属性设置为 True 时,如果应用程序服务器上禁用了应用程序安全性,那么 Web Service 安全性不会强制实施所配置的 WS-Security 约束。在不安全的环境中,可以使用此定制属性来调试服务,而不需要从 Web Service 应用程序中除去安全性约束。

信息 | 值 |
---|---|
数据类型 | 字符串 |
值 | true 和 false |
Defaultfalse | false |
- 展开 。
- 单击常规提供程序策略集绑定或者常规客户机策略集绑定。
- 单击 binding_name。
- 在“策略”标题下,单击 。
- application.parameters
- application.securityinboundbinding config.properties
com.ibm.wsspi.wssecurity.config.gen.checkCacheUsernameTokens
com.ibm.wsspi.wssecurity.config.gen.checkCacheUsernameTokens 定制属性指定是一直对 UsernameToken 进行高速缓存(这是缺省行为),还是由一组规则来确定对它们进行高速缓存。可为令牌生成器配置此定制属性,或者将此定制属性配置为其他属性。
- 如果应用程序正在应用程序服务器上运行,那么决不会对 UsernameToken 进行高速缓存。
- 如果 UsernameToken 的令牌生成器配置了以下回调处理程序,那么将对 UsernameToken 进行高速缓存:com.ibm.wsspi.wssecurity.auth.callback.GUIPromptCallbackHandler。
此定制属性仅适用于 JAX-RPC 运行时。使用 Rational Application Developer 之类的组装工具来设置加密消息部件绑定中的定制属性。
信息 | 值 |
---|---|
数据类型 | 字符串 |
值 | true 和 false |
缺省值 | false |
com.ibm.wsspi.wssecurity.config.request.setMustUnderstand 和 com.ibm.wsspi.wssecurity.config.response.forceMustUnderstandEqualsOne
这两个定制属性允许管理员控制 SOAP 安全性头中的 mustUnderstand 属性的设置。这些属性设置为“出站”定制属性。
- com.ibm.wsspi.wssecurity.config.request.setMustUnderstand 定制属性
com.ibm.wsspi.wssecurity.config.request.setMustUnderstand 定制属性在出站使用者请求中指定 mustUnderstand 设置。如果此属性的值设置为零 (0)、no 或 false,那么不会在出站使用者请求内的 WS-Security 头中设置 mustUnderstand 属性。
信息 值 数据类型 字符串 值 零 (0)、no 或 false 缺省值 true 在 SOAP 消息中,mustUnderstand 属性的缺省值为零 (0)。根据 SOAP 规范,如果此属性的预期值为零,那么此属性不得存在于消息中。
避免故障: 用来设置 com.ibm.wsspi.wssecurity.config.request.setMustUnderstand 属性的指示信息与用来设置 com.ibm.wsspi.wssecurity.config.response.forceMustUnderstandEqualsOne 的指示信息相同,并在下面进行列示。gotcha
- com.ibm.wsspi.wssecurity.config.response.forceMustUnderstandEqualsOne 定制属性
com.ibm.wsspi.wssecurity.config.response.forceMustUnderstandEqualsOne 定制属性指定提供者应该始终以 SOAP 安全性头中的 mustUnderstand="1" 属性作为响应。如果值设置为一 (1)、yes 或 true,那么提供程序将以 WS-Security 头中的 mustUnderstand="1" 属性作为响应。此属性的缺省值为 false。
信息 值 数据类型 字符串 值 一 (1)、yes 或 true 缺省值 false 缺省情况下,响应与请求包含相同的 mustUnderstand 属性。例如,如果入站请求具有 mustUnderstand="1",那么响应也包括 mustUnderstand="1"。如果请求没有 mustUnderstand 属性,那么响应将不包括 mustUnderstand 属性。
对于 JAX-WS 应用程序,可以将 com.ibm.wsspi.wssecurity.config.request.setMustUnderstand 和 com.ibm.wsspi.wssecurity.config.response.forceMustUnderstandEqualsOne 定制属性设置为策略集绑定的“出站”定制属性或者“入站和出站”定制属性。请在管理控制台中完成下列步骤来设置定制属性:- 展开 。
- 单击常规提供程序策略集绑定或者常规客户机策略集绑定。
- 单击 binding_name。
- 在“策略”标题下,单击 。
您还可以使用 wsadmin 工具将 com.ibm.wsspi.wssecurity.config.request.setMustUnderstand 和 com.ibm.wsspi.wssecurity.config.response.forceMustUnderstandEqualsOne 定制属性设置为应用程序上的参数或者出站绑定属性。在 setBinding 中使用了下列 WS-Security 策略类型属性名:- application.parameters
- application.securityinboundbindingconfig.properties
对于 JAX-RPC 应用程序,您可以在管理控制台中的下列位置中指定这两个属性:- 单击JAX-WS 和 JAX-RPC 安全性运行时。在“JAX-RPC 缺省生成器绑定”下,单击属性。 。在“安全性”下,单击
- 单击JAX-WS 和 JAX-RPC 安全性运行时。在“定制属性”下,单击定制属性。 。在“安全性”下,单击
如果您正在将组装工具与 JAX-RPC WS-Security V1.0 应用程序配合使用,那么可以在安全性请求生成者扩展或绑定上设置 com.ibm.wsspi.wssecurity.config.request.setMustUnderstand 定制属性。可以在响应生成者扩展或绑定上设置 com.ibm.wsspi.wssecurity.config.response.forceMustUnderstandEqualsOne 定制属性。绑定中的设置优先于扩展中的设置。
如果将组装工具与 JAX-RPC WS-Security 规范草稿 13–l 级别应用程序配合使用,那么可以将 com.ibm.wsspi.wssecurity.config.request.setMustUnderstand 定制属性设置为端口限定名称绑定上的参数。可以将 com.ibm.wsspi.wssecurity.config.response.forceMustUnderstandEqualsOne 定制属性设置为端口组件绑定上的参数。
com.ibm.wsspi.wssecurity.config.token.inbound.retryOnceAfterTrustFailure
com.ibm.wsspi.wssecurity.config.token.inbound.retryOnceAfterTrustFailure 定制属性指定在应用程序服务器启动之后是否可以重新装入信任库。
信任库是密钥库。缺省情况下,当应用程序服务器正在运行时,JAX-WS WS-Security 不会确认刷新任何密钥库。由于性能方面的原因,当每个应用程序启动时,都会将密钥库高速缓存在内存中。因为应用程序之间共享此高速缓存,所以即使单个应用程序已停止,其密钥库仍然会保留在此高速缓存中。因此,在应用程序服务器启动之后,如果已将 X.509 令牌使用者所使用的可信证书添加至信任库,那么信任验证将失败。
如果您将 com.ibm.wsspi.wssecurity.config.token.inbound.retryOnceAfterTrustFailure 属性设置为 true,那么在进行信任验证时,WS-Security 运行时将重新装入其已配置的信任库,然后再一次尝试进行信任验证。重新装入的信任库仅用于此单次尝试重新验证。未替换高速缓存中的密钥库对象,因为替换密钥库对象可能会导致并行度问题。
如果再次尝试验证时失败,那么会将信任验证失败信息返回给客户机。

com.ibm.wsspi.wssecurity.consumer.timestampRequired
com.ibm.wsspi.wssecurity.consumer.timestampRequired 属性指定在为 WS-Security 策略选择了将时间戳记包含在安全头中设置时,是否在响应的安全性头中不需要时间戳记。
JAX-WS WS-Security 运行时更新为符合 OASIS WS-SecurityPolicy 1.2 规范的“需要时间戳记”要求。如果您想要将应用程序配置为在配置了出站时间戳记的情况下不需要入站时间戳记,那么您可以将 com.ibm.wsspi.wssecurity.consumer.timestampRequired 定制属性添加至 Web Service 安全性设置,并将该属性设置为 false。当此属性设置为 false 时,即使选择了在安全性头中包括时间戳记作为 WS-Security 策略的设置,在响应的安全性头中也不需要时间戳记。
此属性的缺省值为 true。

信息 | 值 |
---|---|
数据类型 | 布尔值 |
缺省值 | true |
com.ibm.wsspi.wssecurity.dsig.inclusiveNamespaces
此定制属性(同时适用于 JAX-RPC 应用程序和 JAX-WS 应用程序)指定是否要对 XML 数字签名禁用包含名称空间前缀列表。缺省情况下,WebSphere Application Server 将该前缀包括在 Web Service 安全性的数字签名中。如果您不想将包含名称空间设置为元素,那么可以将此定制属性设置为 false。Web Service 安全性的某些实现无法处理此前缀列表。如果您在发送已签名 SOAP 消息后遇到签名验证失败,并且在环境中使用了另一供应商,那么在禁用此属性之前,请与服务提供方联系以获取其实现的可能修订。
- 单击 。
- 单击 。
- 在“Web Service 安全性属性”下,单击Web Service:客户机安全绑定或 Web Service:服务器安全绑定。
- 在“请求生成器(发送方)绑定”或“响应生成器(发送方)绑定”下,单击编辑定制。
- 在“必需属性”下,单击 。
- 指定此定制属性及其值。
- 单击 或 。
- 单击 。
- 在“策略”下,单击 WS-Security。
- 在“消息安全策略绑定”下,单击认证和保护。
- 在“请求消息签名和加密保护”或“响应消息签名和加密保护”下面,单击 signature_message_part_reference。当您单击 signature_message_part_reference 名称时,您将访问已签名消息部件绑定的配置。
- 指定此定制属性及其值。
com.ibm.wsspi.wssecurity.dsig.oldEnvelopedSignature
将此属性与 JVM 定制属性 com.ibm.wsspi.wssecurity.dsig.enableEnvelopedSignatureProperty 配合使用,以向 WS-Security 运行时指出:您希望 WS-Security 运行时像在 V7.0.0.21 和更低版本中一样,计算摘要值以用于创建出站 XML 数字签名或者执行入站验证。有关更多信息,请参阅 Java™ 虚拟机 (JVM) 定制属性,以了解有关您何时可能想要使用此 JVM 定制属性的描述。
此属性指定为 WS-Security 策略集绑定的“入站”定制属性、“出站”定制属性或者“入站和出站”定制属性。
com.ibm.wsspi.wssecurity.enc.MTOM.Optimize
将此定制属性的值设置为 true 以对已加密数据的密文使用消息传输优化机制 (MTOM),此属性是在客户机请求或服务器响应的出站加密部件上的 WS-Security 策略绑定中进行设置。
com.ibm.wsspi.wssecurity.generator.useWSSObject
此定制属性确定 WS-Security 运行时如何构建在出站 SOAP 消息中发送的 SOAP 安全性头。缺省情况下,WS-Security 运行时使用一个由内部 Web Service 安全性 (WSS) 对象表示的快速路径来构建安全性头。此外,还可以使用 Axis2 运行时和对象来构建安全性头。
在 WS-Security 策略集绑定中,此属性设置为“出站”定制属性或者“入站和出站”定制属性。此属性可以设置为 true 或 false。当此属性设置为 true 时,将使用 WSS 对象来构建安全性头。当此属性设置为 False 时,将使用 Axis2 对象来构建安全性头。
对入站消息和出站消息都同时使用 WS-Security 策略和 WS-Addressing 策略时,可能会发生问题,Body 元素将显示在出站 SOAP 消息中的 header 元素中。如果发生了此错误,请将 com.ibm.wsspi.wssecurity.generator.useWSSObject 定制属性设置为 false。
缺省值是 true。
com.ibm.wsspi.wssecurity.krbtoken.clientRealm
此 JAX-WS Kerberos 令牌生成器定制属性指定与客户机相关联的 Kerberos 域的名称并允许 Kerberos 客户机域启动 Kerberos 登录。
对于单个 Kerberos 域环境,此属性是可选属性;缺省情况下,此属性将是缺省 Kerberos 域名称。 在跨 Kerberos 域或信任 Kerberos 域环境中实现 Web Service 安全时,必须为此属性提供值。
此属性设置为 Kerberos 令牌生成器的回调处理程序上的定制属性。要在管理控制台中设置此属性,请单击 binding_name > WS-Security > 认证和保护 > kerberos_token_name > 回调处理程序。对于一个使用 WS-Security WSS API 的应用程序,还可以在令牌生成器的 Kerberos 回调处理程序上设置此属性。
com.ibm.wsspi.wssecurity.krbtoken.loginPrompt
将此 JAX-WS Kerberos 令牌生成器定制属性设置为 true 以启用 Kerberos 登录。
此属性设置为 Kerberos 令牌生成器的回调处理程序上的定制属性。要在管理控制台中设置此属性,请单击 binding_name > WS-Security > 认证和保护 > kerberos_token_name > 回调处理程序。对于一个使用 WS-Security WSS API 的应用程序,还可以在令牌生成器的 Kerberos 回调处理程序上设置此属性。
此属性的缺省值是 false。
com.ibm.wsspi.wssecurity.login.useSoap12FaultCodes
com.ibm.wsspi.wssecurity.login.useSoap12FaultCodes 定制属性指定在返回故障作为对 SOAP 1.2 消息的响应时,是否更新 WS-Security 运行时以发出正确的 SOAP 1.2 故障代码。
当此属性设置为 true 时,WS-Security 运行时将返回 SOAP 1.2 故障代码作为对 SOAP 1.2 消息的响应。
当此属性设置为 False 时,WS-Security 运行时将返回 SOAP 1.1 故障代码作为对 SOAP 1.2 消息的响应。
此属性的缺省值为 true。
此属性需要设置为特定绑定的 WS-Secrutiy 入站定制属性或者入站和出站定制属性。
<?xml version="1.0" encoding="UTF-8"?>
<soapenv:Envelope xmlns:soapenv=" http://www.w3.org/2003/05/soap-envelope">
<soapenv:Body>
<soapenv:Fault>
<soapenv:Code>
<soapenv:Value>soapenv:Sender</soapenv:Value>
<soapenv:Subcode>
<soapenv:Value xmlns:axis2ns1="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">
axis2ns1:FailedAuthentication</soapenv:Value>
</soapenv:Subcode>
</soapenv:Code>
<soapenv:Reason>
<soapenv:Text>CWWSS6521E: The Login failed because
of an exception: javax.security.auth.login.LoginException:
CWWSS7062E: Failed to check username [user1] and password in
the UserRegsitry: WSSUserRegistryProcessor.checkRegistry()=false
</soapenv:Text>
</soapenv:Reason>
<soapenv:Detail></soapenv:Detail>
</soapenv:Fault>
</soapenv:Body>
</soapenv:Envelope>
com.ibm.wsspi.wssecurity.nonce.includeEncodingType
将此 JAX-WS 定制属性添加至 WebSphere WS-Security 运行时,以指示应该将 EncodingType 属性添加至现时标志元素。将此定制属性设置为 true 时,会将 EncodingType 属性添加到安全性头中的所有现时标志元素。
- 出站定制属性
- 入站和出站定制属性
com.ibm.wsspi.wssecurity.token.cert.useRequestorCert
将此 JAX-WS 定制属性设置为 true 时,将使用 SOAP 请求签署者的证书来加密 SOAP 响应。 此过程称为签署者证书加密。
此属性设置为加密令牌生成器的回调处理程序上的定制属性。要在管理控制台中设置此属性,请单击 binding_name > WS-Security > 认证和保护 > token_name > 回调处理程序。对于一个使用 WS-Security WSS API 的应用程序,还可以在令牌生成器的回调处理程序上设置此属性。
此属性的缺省值是 false。
com.ibm.wsspi.wssecurity.token.enableCaptureTokenContext
此属性指示是否启用了令牌使用者和/或令牌生成器,以从消息上下文中的 tokenHolder 获取其令牌。
此属性仅对 JAX-WS 应用程序有效。
此属性的有效值为 true 和 false。缺省值为 false。
- 展开 。
- 单击常规提供程序策略集绑定或者常规客户机策略集绑定。
- 单击绑定名称。
- 在“策略”标题下,单击 。
- 在定制属性名称和值字段中添加此属性及其值。
com.ibm.wsspi.wssecurity.token.enableCaptureTokenInboundMsg
此属性指示是否启用了令牌使用者和/或令牌生成器,以从入站消息中的 SecurityToken 集获取其令牌。如果入站消息中有多个令牌与令牌生成器的值类型相匹配,那么所选择的令牌将不确定。
此属性仅对 JAX-WS 应用程序有效。
此属性的有效值为 true 和 false。缺省值为 false。
有关 tokenHolder 列表的更多信息,请参阅 com.ibm.wsspi.wssecurity.core.config.IssuedTokenConfigConstants 中的 passThroughToken
- 展开 。
- 单击常规提供程序策略集绑定或者常规客户机策略集绑定。
- 单击绑定名称。
- 在“策略”标题下,单击 。
- 在定制属性名称和值字段中添加此属性及其值。
com.ibm.wsspi.wssecurity.token.forwardable
为 JAX-WS 编程模型配置 SecurityToken 使用者绑定时,使用此定制属性来指定是否将接收令牌传播到其他服务器。如果您为此属性指定值 true,那么您使此令牌能够传播到其他服务器。如果您为此属性指定值 false,那么不会将令牌传播到其他服务器。缺省值为 true,并且此值不区分大小写。
com.ibm.wsspi.wssecurity.token.IDAssertion.isUsed
此属性旨在用于身份断言方案。在身份令牌的回调处理程序配置中将此属性设置为 true。
在 UsernameToken 生成器中将此属性设置为 true 时,它允许该生成器发出没有密码的 UsernameToken。对 UsernameToken 生成器或使用者使用此属性时,不需要身份断言配置的其余内容。
信息 | 值 |
---|---|
数据类型 | 字符串 |
值 | true 和 false |
缺省值 | false |
com.ibm.wsspi.wssecurity.token.IDAssertion.useRunAsIdentity
此属性供 UsernameToken 生成器使用。在 UsernameToken 生成器的回调处理程序中将此属性设置为 true 时,当前 runAs 主体集中的主体名称将用作 UsernameToken 中的用户名。当此属性设置为 true 时,必须启用基本安全性,并且必须对当前执行线程设置 runAs 主体集,以便在 UsernameToken 中设置非空用户名。
IDAssertion.useRunAsIdentity=true 还需设置 IDAssertion.isUsed=true。
信息 | 值 |
---|---|
数据类型 | 字符串 |
值 | true 和 false |
缺省值 | false |
com.ibm.wsspi.wssecurity.token.username.addNonce 和 com.ibm.wsspi.wssecurity.token.username.addTimestamp
为 JAX-WS 编程模型配置用户名令牌时,为了防止遭受重放攻击,强烈建议您将定制属性 com.ibm.wsspi.wssecurity.token.username.addNonce 和 com.ibm.wsspi.wssecurity.token.username.addTimestamp 添加至回调处理程序配置以生成令牌。这些定制属性启用消息认证的现时标志和时间戳记并对它们进行验证。必须将这些属性的值设置为 true。
com.ibm.wsspi.wssecurity.token.username.emitPasswordDigest
此属性使 UNTGenerateLoginModule 能够对密码执行摘要算法,并对 UsernameToken 发出 #PasswordDigest 而不是 #PasswordText 的 PasswordType。
- 单击 。
- 单击常规提供程序策略集绑定或常规客户机策略集绑定。
- 单击绑定名称。
- 在策略设置下,单击
- 在定制属性名称和值字段中添加此属性及其值。
信息 | 值 |
---|---|
值 | true 和 false |
缺省值 | false |
com.ibm.wsspi.wssecurity.token.username.password.forwardable
为 JAX-WS 编程模型配置 UsernameToken 使用者绑定时,使用此定制属性来指定在传播 UsernameToken 期间是否将密码与 UsernameToken 一起传播到其他服务器。如果您为此属性指定值 true,那么在传播期间将保留密码。如果您为此属性指定值 false,那么在传播 UsernameToken 之前必须移除密码。缺省值为 true,并且此值不区分大小写。
com.ibm.wsspi.wssecurity.token.username.verifyNonce 和 com.ibm.wsspi.wssecurity.token.username.verifyTimestamp
为 JAX-WS 编程模型配置用户名令牌时,为了防止遭受重放攻击,强烈建议您将定制属性 com.ibm.wsspi.wssecurity.token.username.verifyNonce 和 com.ibm.wsspi.wssecurity.token.username.verifyTimestamp 添加至令牌使用者的回调处理程序配置。这些定制属性启用消息认证的现时标志和时间戳记并对它们进行验证。必须将这些属性的值设置为 true。
com.ibm.wsspi.wssecurity.token.UsernameToken.digestPasswordCallbackHandler
此定制属性定义定制回调处理程序类,该类在用于处理 #PasswordDigest 的 PasswordType 的 UsernameToken 使用者中使用。回调处理程序必须可供应用程序使用,并且必须实现 javax.security.auth.callback.CallbackHandler 接口。UsernameToken 使用者中的 Username 元素的值将传递到 javax.security.auth.callback.NameCallback 对象上的回调处理程序。与用户名相关联的密码将在 javax.security.auth.callback.PasswordCallback 对象中返回。 将对返回的密码执行摘要算法,然后将其与用户名令牌使用者中的密码值进行比较。
此属性配置为 UsernameToken 回调处理程序定制属性。有关更多信息,请参阅“通过 PasswordDigest 使用 UsernameToken”。
com.ibm.wsspi.wssecurity.token.UsernameToken.disableUserRegistryCheck
此属性允许对 JAX-WS 中的身份令牌跳过用户注册表检查。这意味着身份断言方案中与身份令牌相关联的用户名可以通过 UNTConsumeLoginModule 而不会产生注册表错误。通常,身份令牌不得包含密码,并且可能有信任令牌,也可能没有信任令牌。例如,可能有保密信任。
此属性不会影响任何包含密码的 UsernameToken。
如果您需要跳过对包含密码的 UsernameToken 进行注册表检查,请参阅“使用堆栈化 JAAS 登录模块来替换 UsernameToken 使用者的认证方法”主题。如果 UsernameToken 需要调用者配置,请参阅“配置 UsernameToken 调用者配置并且不进行注册表交互”主题。
当此属性设置为 true 时,当且仅当 UsernameToken 不包含密码时,UNTConsumeLoginModule 才不会验证入站 UsernameToken。
此属性的有效值为 true 和 false。缺省值为 false。
- 展开 。
- 单击常规提供程序策略集绑定或者常规客户机策略集绑定。
- 单击绑定名称。
- 在“策略”标题下,单击 。
- 在定制属性名称和值字段中添加此属性及其值。
com.ibm.wsspi.wssecurity.auth.module.UsernameLoginModule.disableUserRegistryCheck
此属性允许对 JAX-RPC 中的 UsernameToken 跳过用户注册表检查过程。这意味着用户名将通过 UsernameLoginModule 而不产生注册表错误。
此属性的有效值为 true 和 false。缺省值为 false。
可以将此属性添加至 wssecurity.UsernameToken JAAS 配置的 com.ibm.wsspi.wssecurity.auth.module.UsernameLoginModule 模块的定制属性中,或者添加至提供者应用程序的 UsernameToken 使用者的 JAAS 配置的定制属性中。
com.ibm.wsspi.wssecurity.tokenGenerator.ltpav1.pre.v7
Web Service 安全性支持 LTPA (V1) 令牌和 LTPA V2 (LTPA2) 令牌。只有 JAX-WS 运行时才支持 LTPA2 令牌(它比 V1 令牌更安全)。您可以对令牌生成者设置强制令牌版本互操作性选项,以确定在接收到请求消息时是检索 LTPA (V1) 令牌还是检索 LTPA2 令牌。但是,如果您想要强制运行时仅使用 LTPA (V1) 令牌,那么可以将 com.ibm.wsspi.wssecurity.tokenGenerator.ltpav1.pre.v7 定制属性设置为 true。
- 找到您想要配置的绑定。
- 在“策略”表中单击 WS-Security 策略。
- 在“安全策略绑定”部分单击“认证和保护”链接。
- 单击您想要配置的令牌生成器。
- 在“定制属性”部分将 com.ibm.wsspi.wssecurity.tokenGenerator.ltpav1.pre.v7 指定为 true。
com.ibm.wsspi.wssecurity.tokenGenerator.ltpav1.pre.v7 定制属性值 | 强制令牌版本值 | 结果 |
---|---|---|
false | 已禁用 | 运行时可以使用 LTPA (V1) 令牌和 LTPA2 令牌。 |
未指定(意味着值为 false) | 已禁用 | 运行时可以使用 LTPA (V1) 令牌和 LTPA2 令牌。 |
true | 已禁用 | 运行时只能使用 LTPA (V1) 令牌。 |
true | 已启用 | 运行时只能使用 LTPA (V1) 令牌。 |
有关更多信息,请参阅有关对 LTPA 令牌启用或禁用单点登录互操作性方式的文档。
com.ibm.wsspi.wssecurity.useMTOMWithCustomComponents
如果错误地包括 MTOM 的消息包含 XML 文档中的 base64Binary 数据,请将此 JAX-WS 定制属性设置为 true。当此属性设置为 true 时,WS-Security 运行时不会过早地对 文档元素进行扩展和编组。此属性将指定为客户机 WS-Security 策略集绑定中的“出站”定制属性或“入站和出站”定制属性。此属性的缺省值为 false。