2013-02-25 124 views
1

场景: 现有的WCF服务X在Domain_A中的计算机上运行。该服务依赖于模拟,因此必须具有Windows身份。 ASP.NET网站在不属于域的机器上运行(它是DMZ)。它需要调用服务X,最好(但不一定)使用net.tcp绑定。WCF跨域身份验证和假冒

从我对SO的类似问题的理解是,无法在WCF中的域之间使用Windows身份验证。如果我使用不同的机制(即证书),这是否意味着仍然没有办法将服务X的凭证提供给可用于模拟的服务?或者证书可以以某种方式映射到Domain_A上的帐户?

我能看到的唯一的其他解决方案是在Domain_A上创建一个附加服务Y,该服务可以连接到网站(不需要模仿),然后使用Y的身份将请求路由到服务X.但是,那只是感觉非常糟糕。

有没有人有更聪明的解决方案呢?

+0

您可以将客户端证书映射到用户。请参阅http://msdn.microsoft.com/en-us/library/ms730088.aspx – CodeCaster 2013-02-25 23:30:12

回答

0

因此,由于使用Windows身份验证配置一个证书映射到帐户以及netTcpBinding的SSL绑定存在困难,所以我咬紧牙关,刚刚创建了一个中间'服务Y'。不是最优雅的解决方案,但它的工作原理。