我尝试使用soapUI进行测试,但是在启用安全性时它不支持wsHttpBinding。 soapUI在使用wsHttpBinding时确实有效,而安全性为none。
我们还尝试了WCF Storm,它可以正常工作,我们可以加载我们的客户端配置文件,但是我们正在寻找WCF Storm的其他替代方案。
是否还有其他类似于soapUI的工具,SO推荐并且可以使用上述配置?
答案 0 :(得分:2)
wsHttpBinding
只是微软对一些WS- *相关配置的模糊命名。 SOAPUI支持一些与安全性相关的配置,如果使用TransportWithMessageCredential
安全模式,则应该没有问题。您只需连接到正确安全的HTTPS端点和provide credentials (User name)以获取您的请求(也可能是时间戳)。
答案 1 :(得分:0)
当尝试使用wsHttpBinding和TransportWithMessageCredential securiuty set测试wcf服务时,我遇到了类似的问题。
在每次调用时,SoapUI都会收到一条错误消息:
无法处理邮件。这很可能是因为行动' http://www.mysite.com/ISomeService/SomeMethod'不正确或因为邮件包含无效或过期的安全上下文令牌,或者因为绑定之间存在不匹配。如果服务因不活动而中止通道,则安全上下文令牌将无效。要防止服务中止空闲会话,请过早增加服务端点绑定的接收超时。
经过多次试验和错误,浏览网页上的大量文章,我需要启用WS-A寻址并启用wsa:To元素。
这让我更进一步,但我仍然得到了同样的错误信息。
那么这个安全上下文的事情呢,它需要吗?我的客户在每次通话后处理,因此不需要SCT ref:SO post。
设置establishSecurityContext =" false"让我了解安全上下文令牌错误,事实证明一切都准备摇滚。
但是,如果您确实禁用了安全上下文,并且未启用wsa:To元素,那么您将收到如下错误消息:
带有To''的消息由于EndpointDispatcher上的AddressFilter不匹配,无法在接收器处理。检查发件人和收件人的EndpointAddresses是否一致。
但请注意参考文章。如果您在每次调用后都没有处置客户端,那么添加另一个单独的绑定并将establishSecurityContext设置为false可能是明智的。
换句话说:就我所知,SoapUI似乎不支持安全上下文。
答案 2 :(得分:0)
我的解决方案是使用传出WS-Security配置,我将解释这些步骤:
在添加Outgoing WSS后,记住关闭所有请求窗口。
希望它有所帮助,干杯。