我们正在实施一个解决方案,该解决方案涉及第三方系统访问我们的Azure服务总线,由SAS保护。只要这个SAS是安全的,我们很高兴:)
但我们希望限制SAS受到损害时的影响。对于Azure存储,SAS可以使用IP范围过滤器来提供帮助,但服务总线不支持此功能。
有没有办法根据IP地址限制对服务总线的访问?对于应该从服务总线读取的第三方系统,这尤其是一个问题。
切换到ACS(由于其他原因,这是一个选项)会有任何帮助吗?
答案 0 :(得分:3)
我自己仍在寻找一种限制服务总线访问特定IP范围的方法。直到我发现场景的推荐具有一定程度的类似效果。
这个想法的第一部分是让SAS令牌在半小时或更短的时间内非常短暂。其次不是在源和配置中存储这些SAS令牌,而是提供将其交付的休息服务。现在可以保护令牌工厂和讲义服务,以及其他具有受限IP地址的措施。
现在使用配置和源文件中的SAS令牌,它们不太可能泄漏,并且可以滥用它们的时间更短。
现在有更多移动部件的成本,但价格似乎并不太高。从配置中删除安全令牌的想法很可能是值得的。
它有点旧(至少在云年),并且有一些像Azure Key Vault这样的新开发,也许它可以用来使场景变得更好或更容易。
答案 1 :(得分:2)
更新:Azure Service Bus现在预览了Service Bus Premium和Event Hubs的IP过滤:
此功能允许用户控制访问他们的IP 资源。此功能的一些特征:
- 规则允许您指定对IP掩码的接受和拒绝操作。
- 规则适用于IPv4地址。
- 规则应用于命名空间级别。
- 您可以拥有多个规则,并按顺序应用它们。
- 与IP地址匹配的第一条规则决定了接受还是拒绝 行动。
- 被拒绝的IP请求会收到未经授权的回复。
https://azure.microsoft.com/en-us/blog/ip-filtering-for-event-hubs-and-service-bus/
替代解决方案: 您可以在服务前添加Azure API管理。 https://azure.microsoft.com/en-us/documentation/articles/api-management-get-started/
Azure API管理提供:
有关一个很好的例子,请查看此博文: http://blog.brauwers.nl/2014/05/29/exposing-a-service-bus-topic-using-azure-api-management/
对于ACS,没有进行任何开发,大多数功能也在Azure AD和Azure B2C中公开/移动。