2

我尝试使用soapUI进行测试,但是启用安全性时它不支持wsHttpBinding。使用 wsHttpBinding 并且没有安全性时,soapUI 确实有效。

我们还尝试了 WCF Storm,它确实有效,我们可以加载我们的客户端配置文件,但是我们正在寻找 WCF Storm 的其他替代品。

是否有任何其他类似于soapUI的工具,SO推荐并且可以与上述配置一起使用?

4

3 回答 3

2

wsHttpBinding只是微软对一些 WS-* 相关配置的晦涩命名。SOAPUI 支持一些与安全相关的配置,如果您使用TransportWithMessageCredential安全模式,您应该没有问题。您只需要连接到正确安全的 HTTPS 端点并为您的请求 提供凭据(用户名) (可能还包括时间戳)。

于 2012-12-20T11:55:09.443 回答
1

我的解决方案是使用传出 WS-Security 配置,我将解释这些步骤:

  • “显示项目视图”(右键单击 Proyect 文件夹)
  • 转到“WS-Security 配置”选项卡
  • 在顶部添加图标并指定“用户”或其他内容。
  • 然后转到第二个添加图标(底部面板)并在“PasswordText”中输入用户名、密码和 PasswordType(留下其他 2 个复选框)。
  • 最后转到soap 请求,选择基本授权和“传出WSS:”用户或您创建的其他用户。

添加传出 WSS 后请记住关闭所有请求窗口。

希望有帮助,加油。

于 2015-08-31T14:57:57.137 回答
0

尝试使用 wsHttpBinding 和 TransportWithMessageCredential 安全设置测试 wcf 服务时,我遇到了类似的问题。

每次调用 SoapUI 都会收到一条错误消息,说明:

无法处理该消息。这很可能是因为操作“ http://www.mysite.com/ISomeService/SomeMethod ”不正确,或者因为消息包含无效或过期的安全上下文令牌,或者因为绑定之间存在不匹配。如果服务由于不活动而中止通道,则安全上下文令牌将无效。为了防止服务过早中止空闲会话,请增加服务端点绑定的接收超时。

经过多次试验和错误并浏览了网络上的大量文章后,我需要启用 WS-A 寻址并启用 wsa:To 元素。

这让我更进一步,但我仍然收到相同的错误消息。

那么这个安全上下文的东西呢,是否需要呢?我的客户在每次通话后都会进行处理,因此不需要 SCT ref: SO post

设置 setupSecurityContext="false" 让我摆脱了安全上下文令牌错误,事实证明一切都准备好了。

但是,如果您确实禁用了安全上下文,并且没有启用 wsa:To 元素,那么您将收到如下错误消息:

由于 EndpointDispatcher 的 AddressFilter 不匹配,接收方无法处理带有 To '' 的消息。检查发送方和接收方的 EndpointAddresses 是否一致。

但请注意参考帖子。如果您没有在每次调用后处理客户端,那么添加另一个单独的绑定并将建立安全上下文设置为 false 可能是明智之举。

换句话说:据我目前所知,SoapUI 似乎不支持安全上下文。

于 2013-04-05T07:07:39.717 回答