我有两个webroles,它们之间没有WCF通信(这是故意的)
沟通和认证是片面的。因此,一个webrole总是发送请求,另一个总是接受请求。
要确保所述控制器仅接受来自其他webrole的请求,我们要使用ssl证书。
我安装了证书 - 我现在能够向所述控制器发出https请求。 但是现在这对整个webrole来说都很活跃。
在最终版本中,出于明显的安全原因,用户应该能够使用全局信任证书通过https连接到webrole。 这将需要一个azure https端点。 然后,我们的内部通信需要另一个端点(使用我们的内部证书)。
但是:如何将仅用于内部通信的控制器限制为其指定的https请求? (基于内部证书) 另一方面,我如何在客户端(发出请求的webrole)验证所述证书是否有效?
有没有更好的方法来确保两个webroles之间的安全通信?也许使用内部端点?
提前致谢
答案 0 :(得分:0)
我认为您应该考虑为角色到角色的沟通定义内部端点。这样的事情应该有效:
<NetworkTrafficRules>
<OnlyAllowTrafficTo>
<Destinations>
<RoleEndpoint endpointName="InternalTCP2" roleName="WorkerRole1"/>
</Destinations>
<AllowAllTraffic/>
<WhenSource matches="AnyRule">
<FromRole roleName="WebRole1"/>
</WhenSource>
</OnlyAllowTrafficTo>
</NetworkTrafficRules>
如果您通过内部端点在角色之间进行通信,则不应该真正需要调用HTTPS。