我有一个托管在 IIS 上的 WCF 服务DomainA
。我的客户端计算机要么未加入任何域,要么位于不受信任的域上,因此我无法调用该服务。(错误There was no endpoint listening at .... that could accept this message....
:)
为了解决这个问题,我在调用 WCF 服务时使用了显式用户凭据。 http://blogs.msdn.com/b/sonuarora/archive/2007/04/21/setting-client-credentials.aspx
Proxy.ClientCredentials.Windows.ClientCredential.UserName = "UserA";
Proxy.ClientCredentials.Windows.ClientCredential.Password = "Pass"
Proxy.ClientCredentials.Windows.ClientCredential.Domain = "**DomainA**"
//UserA belongs to DomainA.
我在一台机器上试过这个DomainA
,它奏效了。我确认UserA
使用过。但这不适用于不是来自DomainA
.
这是因为模拟发生在客户端机器上吗?有没有办法将这些显式凭据传输到 IIS 并在 IIS 机器上尝试模拟?