1
我一直在尝试使用传输和邮件安全以及相互证书身份验证来为WCF服务创建基于Metro的客户端。WCF城域互操作邮件未加密
我有每个模式独立工作,不在一起 - 即,仅消息安全工程,主体被加密,并通过HTTP,或仅SSL作品发送的,没有被加密的消息。激活它们使得客户端通过SSL发送未加密的消息。
这是我目前的绑定:
<customBinding>
<binding name="customBind">
<transactionFlow />
<security authenticationMode="MutualCertificate" allowSerializedSigningTokenOnReply="true" defaultAlgorithmSuite="Basic128" includeTimestamp="true" securityHeaderLayout="Lax">
</security>
<textMessageEncoding messageVersion="Soap11" />
<httpsTransport requireClientCertificate="false"/>
<!--<httpTransport />-->
</binding>
</customBinding>
随着httpTransport,消息加密,与httpsTransport,他们不是。服务器响应“验证消息安全性时发生错误”,因为消息未加密。 Metro客户端失败,并显示“com.sun.xml.wss.XWSSecurityException:未满足安全要求 - 消息中没有安全标头”。
有没有人遇到过这个?任何线索,为什么这可能会发生,或者我可以探索的可能的事情?附加信息:使用Netbeans 7.1.1和Metro 2.2。
如果通过SSL发送,您是否需要加密消息? – 2012-04-20 18:10:58
不幸的是,我的确 - 安全要求决定了传输和消息安全都是必需的。 – Sorcerer13 2012-04-20 18:27:29
你可以发布你正在尝试的绑定配置吗?应该只是在安全属性上指定mode =“both”的情况。另外,Metro支持ws- *标准,所以你没有使用wsHttpBinding的原因? – dez 2012-04-29 00:21:02