通过Https端点在两个Webrole之间交换数据

时间:2013-03-18 17:57:16

标签: ssl azure https endpoint restriction

我有两个webroles,它们之间没有WCF通信(这是故意的)

沟通和认证是片面的。因此,一个webrole总是发送请求,另一个总是接受请求。

要确保所述控制器仅接受来自其他webrole的请求,我们要使用ssl证书。

我安装了证书 - 我现在能够向所述控制器发出https请求。 但是现在这对整个webrole来说都很活跃。

在最终版本中,出于明显的安全原因,用户应该能够使用全局信任证书通过https连接到webrole。 这将需要一个azure https端点。 然后,我们的内部通信需要另一个端点(使用我们的内部证书)。

但是:如何将仅用于内部通信的控制器限制为其指定的https请求? (基于内部证书) 另一方面,我如何在客户端(发出请求的webrole)验证所述证书是否有效?

有没有更好的方法来确保两个webroles之间的安全通信?也许使用内部端点?

提前致谢

1 个答案:

答案 0 :(得分:0)

我认为您应该考虑为角色到角色的沟通定义内部端点。这样的事情应该有效:

<NetworkTrafficRules>
  <OnlyAllowTrafficTo>
    <Destinations>
      <RoleEndpoint endpointName="InternalTCP2" roleName="WorkerRole1"/>
    </Destinations>
    <AllowAllTraffic/>
    <WhenSource matches="AnyRule">
      <FromRole roleName="WebRole1"/>
    </WhenSource>
  </OnlyAllowTrafficTo>
</NetworkTrafficRules>

如果您通过内部端点在角色之间进行通信,则不应该真正需要调用HTTPS。