我们在Windows服务中托管了netTCPBinding的WCF服务,该服务连接到ContentManager服务器以上载文档并添加一些元数据,检索documentID并将其传递给.Net应用程序,客户端使用Windows身份验证进行身份验证。我们编写了一个WCF客户端库,用作其他业务应用程序的代理,这些应用程序希望通过引用此dll来上载文档。只要客户端应用程序位于Intranet域中,所有这一切都可以正常工作。
现在需要通过移动电话访问的Web应用程序使用此服务,移动应用程序访问传统的asmx webservice,该服务引用代理连接到WCF服务,WCF服务又与另一个后端wcf服务进行通信并上传对于内容管理器,asmx webservice托管在DMZ中当前域之外的服务器中,并且公司域和DMZ之间没有信任,我们在两个服务器上打开了必要的端口,但由于客户端凭证类型是windows,因此它会抛出“远程服务器不满足相互认证要求。“这是预料之中的。现在我们想要使用nettcpbinding是因为显而易见的性能原因,因为文档是通过手机从远程位置扫描和发送的,而且只需很少的时间重写这不是一个选项。在我阅读的文章和这里的讨论中,大多数文章建议不要在这种情况下使用netTCPBinding,有些人尝试使用certficates来实现它,
我的问题是
我之前没有参与过证书,所以关于这个场景的指导也会有很大的帮助。