我有一个 WCF(3.5) 客户端与 Java Web 服务(Spring-WS,WSS4J)交谈,客户端在接收来自服务器的响应时失败,给出以下异常消息
无法从 BinarySecretSecurityToken 的“ http://docs.oasis-open.org/wss/oasis-wss-wssecurity-secext-1.1.xsd ”命名空间的“SignatureConfirmation”元素中读取令牌,并带有“”ValueType。如果预期此元素有效,请确保将安全性配置为使用具有指定名称、命名空间和值类型的令牌。
这是我的客户端配置
<system.serviceModel>
<behaviors>
<endpointBehaviors>
<behavior name="DISEndPointBehaviour">
<clientCredentials>
<clientCertificate storeLocation="LocalMachine" storeName="Root"
x509FindType="FindBySubjectName" findValue="shameerpartner"/>
<serviceCertificate>
<defaultCertificate storeLocation="LocalMachine" storeName="Root"
x509FindType="FindBySubjectName" findValue="dis"/>
<authentication certificateValidationMode="PeerOrChainTrust"/>
</serviceCertificate>
</clientCredentials>
</behavior>
</endpointBehaviors>
</behaviors>
<bindings>
<customBinding>
<binding name="DISMutualCertificateDuplexBinding">
<textMessageEncoding messageVersion="Soap11WSAddressing10"/>
<security authenticationMode="MutualCertificateDuplex"
includeTimestamp="true"
requireDerivedKeys="false"
messageProtectionOrder="SignBeforeEncrypt"
defaultAlgorithmSuite="Basic128Rsa15"
requireSignatureConfirmation="false"
messageSecurityVersion=
"WSSecurity10WSTrustFebruary2005WSSecureConversationFebruary2005WSSecurityPolicy11BasicSecurityProfile10">
</security>
<httpTransport />
</binding>
</customBinding>
</bindings>
<client>
<endpoint binding="customBinding"
bindingConfiguration="DISMutualCertificateDuplexBinding"
contract="DaDeskDataExchange"
name="DaDeskDataExchangeSoap11_DaDeskDataExchange"
address="http://192.168.0.27:8080/disweb/1.0/spring-ws/"
behaviorConfiguration="DISEndPointBehaviour">
<identity>
<dns value="dis"/>
</identity>
<headers>
<wsse:UsernameToken
xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd"
wsu:Id="UsernameToken-1"
xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">
<wsse:Username>119136</wsse:Username>
<wsse:Password
Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordDigest">R3WWGSkNtmPztaSUbiyAWOcpwTM=</wsse:Password>
<wsse:Nonce
EncodingType="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-soap-message-security-1.0#Base64Binary">pkJh0dN0yE8iIRe49T1bwg==</wsse:Nonce>
<wsu:Created>2010-08-18T10:32:23.937Z</wsu:Created>
</wsse:UsernameToken>
</headers>
</endpoint>
</client>
</system.serviceModel>
有人知道这个错误吗?
谢谢,
耻辱