0

我找不到直接的答案。基本上我有服务 MainService 和 SubService。思路是Client软件调用MainService中的一些方法,而SubService调用MainService中的另一部分服务。

我正在部署到 Azure,我想在 MainService 中有两个单独的接口,一个用于客户端,一个用于 SubService,我不希望客户端服务有任何机会访问 SubService 使用的接口。

鉴于我是 WCF 服务的新手,我不知道如何处理这个问题。我是否需要多个 Web 角色来访问同一个数据库并在那里处理并发问题等的不同接口,或者我是否可以以某种方式包含多个接口但通过例如证书来限制可用性。我不确定 Azure 防火墙规则,但如果 MainService 中用于 SubService 的接口可以映射到防火墙规则后面的单独端口,那也是一个可行的解决方案。

tl;dr:在 WCF 服务中需要两个单独的接口,一个用于客户端软件(对外部世界开放),一个用于子系统服务。这两项服务都将在 Azure 中运行。我有哪些选择?

4

1 回答 1

1

您可以使用标准 WCF 授权和身份验证。例如:http: //msdn.microsoft.com/en-us/library/ff647503.aspx

如果你想将 Azure 服务总线与中继消息一起使用,你可以使用服务总线提供的一些身份验证和授权。但是,我不确定与仅在 Web 角色中托管 WCF 相比是否有任何额外的价值(在任何一种情况下都必须这样做,但是对服务的访问将通过服务总线与客户端分离)。

于 2013-04-20T18:04:22.873 回答