我们正在设计一个使用 WCF 作为实现框架的简单的面向服务的架构。少数应用程序使用了一些服务。这些服务大多在内部使用,因此一个基本的身份验证和授权方案(例如基于 Windows)就足够了。
但是,我们希望将某些服务公开给某些业务合作伙伴。他们可以访问的服务集取决于合同。一种标准架构。
我认为我们可以实现一个服务网关,它对请求进行身份验证并将它们中继到正确的内部服务端点(这类似于简单的 ESB),因此我们可以集中身份验证/授权代码并向世界公开一个端点。我查看了一些可用的 ESB 工具包,但对于此目的而言,它们似乎过于复杂。我们不需要集成很多不同的服务,而只是将其中的一些服务暴露给 Internet。
如何在 WCF 中设计和实现这样的中继/路由器,并保持非常简单?我读过Inside Windows Communication Foundation,这是一本好书,但我仍然对如何开始没有足够的信心。