【问题标题】:WCF transportWithMessageCredentialWCF transportWithMessageCredential
【发布时间】:2021-03-28 13:52:40
【问题描述】:

我在 WCF 方面的经验很少,所以我确定我做错了什么。但经过数小时的研究,我要么没有提出正确的问题,要么只是陷入了老套路。

我有一个 Windows 窗体应用程序 (VB),它具有对 WCF WSDL 的服务引用,根据 WCF 测试应用程序使用 transportWithMessageCredential 安全性。

当我尝试连接它时,我每次都会得到 badusernameOrPass。我已经向服务运营商验证了凭据,所以它们不太可能是错误的。

Dim serviceProxy As New Provider.SubmissionServiceClient

 serviceProxy.ClientCredentials.UserName.UserName = "user"
 serviceProxy.ClientCredentials.UserName.Password = "pass"

Dim rtn2 = serviceProxy.ProcessSubmissionFromString(mystring)

产量错误:

System.ServiceModel.Security.MessageSecurityException H结果=0x80131501 消息=从另一方收到不安全或不正确安全的故障。有关故障代码和详细信息,请参阅内部 FaultException。 ...

内部异常 1: FaultException:验证您的用户名或密码时出现问题。错误的用户名或密码**

这种方法不适用于那种类型的安全性,还是我只是缺少一个元素或偏离基础?

如有任何帮助或见解,我们将不胜感激。

【问题讨论】:

  • 你可以先从uri访问你的服务,看看服务器会不会报错。
  • 刚刚完成了与提供商的群组电子邮件。凭据实际上是不正确的。他们需要一个完全合格的用户,他们给了我简写的用户名。浪费了大约 8 个小时试图让它发挥作用,并且对我的能力没有信心;但我现在很乐意继续前进。谢谢你插话。很高兴有人尝试提供帮助。

标签: vb.net wcf wcf-binding wcf-security


【解决方案1】:

凭据不正确。经过相当多的来回后,他们提供了一个完全合格的用户名,可以立即使用。缩短的版本(没有域)可以在他们的其他系统上运行,但显然他们为此 WCF 服务的自定义验证器需要更长的用户名。

如果我对自己的 WCF 和总体技能更有信心,我本可以为自己节省几个小时的工作时间并为最后期限的项目担心。

【讨论】:

    猜你喜欢
    • 2014-07-31
    • 1970-01-01
    • 2018-03-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多