Azure 服务总线的网络安全性

本文介绍如何将安全功能与 Azure 服务总线配合使用。

服务标记

服务标记代表 Azure 服务的一组 IP 地址前缀。 Azure 会管理服务标记包含的地址前缀,并会在地址发生更改时自动更新服务标记。 此管理可最大程度地减少对网络安全规则的频繁更新的复杂性。 有关服务标记的详细信息,请参阅虚拟网络安全的 Azure 服务标记概述

使用服务标记定义网络安全组Azure 防火墙的网络访问控制。 创建安全规则时,请使用服务标记代替特定 IP 地址。 通过在规则的相应ServiceBus目标字段中指定服务标记名称(例如),可以允许或拒绝相应服务的流量。

在服务标记的上下文中,出站指的是从 Azure 虚拟网络流出的流量。 此流量表示服务总线的入站流量。 换句话说,服务标记包含用于从虚拟网络流入服务总线的流量的 IP 地址。

服务标记 目的 是否可使用入站或出站? 可以具有地域性吗? 可与Azure 防火墙一起使用?
ServiceBus Azure 服务总线流量 出站 是的 是的

注释

以前,服务总线服务标记仅包含高级层上命名空间的 IP 地址。 现在,无论层如何,它们都包含 所有命名空间的 IP 地址。

IP 防火墙规则

默认情况下,只要请求附带有效的身份验证和授权,用户就可以从 Internet 访问服务总线命名空间。 通过使用 IP 防火墙,可以限制对 CIDR(无类 Inter-Domain 路由)表示法中的一组 IPv4 地址或 IPv4 地址范围的访问。

此功能适用于仅应从某些已知站点访问Azure 服务总线的情况。 可以使用防火墙规则来配置规则以接受源自特定 IPv4 地址的流量。 例如,如果将服务总线与 Azure ExpressRoute 配合使用,则可以创建防火墙规则,以仅允许来自本地基础结构 IP 地址或公司 NAT 网关地址的流量。

服务总线命名空间应用 IP 防火墙规则。 这些规则适用于使用任何受支持协议的客户端的所有连接。 服务总线命名空间拒绝来自 IP 地址的任何连接尝试,该 IP 地址与允许的 IP 规则不匹配,因为未授权。 响应不会提及 IP 规则。 IP 筛选器规则按顺序应用,与 IP 地址匹配的第一条规则决定了接受或拒绝。

有关详细信息,请参阅 为现有命名空间配置 IP 防火墙

网络服务终结点

通过将服务总线与 虚拟网络服务终结点集成,可以从绑定到虚拟网络的虚拟机等工作负载安全地访问消息传送功能。 网络流量路径在两端都受到保护。

将服务总线命名空间配置为绑定到虚拟网络子网的至少一个服务终结点时,服务总线命名空间不再接受来自任何位置但已授权虚拟网络的流量。 从虚拟网络的角度来看,将服务总线命名空间绑定到服务终结点会配置从虚拟网络子网到消息传送服务的隔离网络隧道。

结果是绑定到子网的工作负荷与相应的服务总线命名空间之间形成了专用和隔离的关系,即使消息传递服务终结点的可观察网络地址位于公共 IP 范围内。

重要

虚拟网络仅在 高级层 服务总线命名空间中受支持。

将虚拟网络服务终结点用于服务总线时,请勿在混合标准层和高级层服务总线命名空间的应用程序中启用这些终结点。 由于标准层不支持虚拟网络,因此终结点仅限于高级层命名空间。

虚拟网络集成的高级安全方案

需要高度严密且隔离安全性的解决方案,且在此方案中,虚拟网络子网提供服务隔离分段,这些方案通常仍然需要在这些隔离的服务之间建立通信路径。

隔离舱之间的任何直接 IP 路由(包括那些通过 TCP/IP 承载 HTTPS 的路由)都会带来从网络层及以上各层漏洞被利用的风险。 消息传送服务提供完全隔离的通信路径,在消息在双方之间转换时,消息甚至会写入磁盘。 绑定到同一服务总线实例的两个不同的虚拟网络中的工作负荷可以通过消息高效可靠地通信,同时保留相应网络隔离边界的完整性。

此消息传递本质上比任何对等通信模式(包括 HTTPS 和其他受 TLS 保护的套接字协议)实现的安全性更高。

将服务总线绑定到虚拟网络

虚拟网络规则是防火墙安全功能,用于控制Azure 服务总线服务器是否接受来自特定虚拟网络子网的连接。

将服务总线命名空间绑定到虚拟网络的过程分为两步。 首先,在虚拟网络子网上创建虚拟网络服务终结点并将其启用 Microsoft.ServiceBus,如 服务终结点概述中所述。 添加服务终结点后,使用虚拟网络规则将服务总线命名空间绑定到它。

虚拟网络规则将服务总线命名空间与虚拟网络子网相关联。 虽然存在规则,但绑定到子网的所有工作负荷都有权访问服务总线命名空间。 服务总线本身从不建立出站连接,不需要获取访问权限,在启用此规则时也不会被授予对子网的访问权限。

有关详细信息,请参阅 允许从特定虚拟网络访问 Azure 服务总线命名空间

专用终结点

通过使用 Azure 专用链接服务,可以通过虚拟网络中的专用终结点访问 Azure 服务(例如 Azure 服务总线、Azure 存储和 Azure Cosmos DB)和 Azure 托管的客户或合作伙伴服务。

专用终结点是一个网络接口,它将你以私密方式连接到与 Azure 专用链接 相关的服务。 专用终结点使用虚拟网络中的专用 IP 地址来有效地将服务引入虚拟网络。

可以通过专用终结点将所有流量路由到服务,因此不需要任何网关、NAT 设备、ExpressRoute 或 VPN 连接或公共 IP 地址。 虚拟网络和服务之间的流量会遍历Microsoft Azure主干网络,以消除来自公共 Internet 的暴露。 可以连接到 Azure 资源的实例,以达到访问控制的最高粒度级别。

有关详细信息,请参阅什么是 Azure 专用链接?

注释

Azure 服务总线的高级层支持此功能。 有关高级层的详细信息,请参阅 有关服务总线高级和标准消息传送层的文章

有关详细信息,请参阅 “允许通过专用终结点访问 Azure 服务总线命名空间”。

网络安全边界

帮助保护服务总线命名空间的另一种方法是将其包含在网络安全外围中。 网络安全外围为平台即服务(PaaS)资源建立逻辑边界。 此边界限制与外围资源之间的通信,并通过显式规则控制公共访问。 若要围绕服务总线和其他 PaaS 资源(如 Azure 密钥保管库)建立安全边界,此方法特别有用。

有关详细信息,请参阅 Azure 服务总线 的网络安全外围