在推送传递下,无法使用专用终结点来传递事件。 也就是说,在推送传递下,在事件网格基本层中,应用程序都无法通过专用 IP 空间接收事件。 但是,使用具有公共终结点的托管标识是安全的替代方法。
使用托管标识
如果使用事件网格基本层,并且你要求以安全方式使用加密通道和发送方(在本例中为事件网格)的已知标识通过公共 IP 空间发送事件,则可以使用 Azure 事件网格自定义主题或具有系统分配或用户分配托管标识的域将事件发送到事件中心、服务总线或 Azure 存储服务。 有关使用托管标识传递事件的详细信息,请参阅使用托管标识的事件传递。
在此配置下,从事件网格到事件中心、服务总线或 Azure 存储的安全流量将保持在 Microsoft 主干上,并将使用事件网格的托管标识。 通过虚拟网络配置 Azure 函数或 Webhook,以通过专用链接使用事件中心、服务总线或 Azure 存储,确保这些服务与函数或 Webhook 之间的流量保持在虚拟网络边界内。
使用托管标识将事件传递到事件中心
若要使用托管标识将事件传递到事件中心命名空间中的事件中心,请执行以下步骤:
- 启用系统分配或用户分配的托管标识:系统主题、自定义主题和域。
- 将标识添加到事件中心命名空间中的“Azure 事件中心数据发送方”角色。
- 在事件中心命名空间中启用“允许受信任的 Microsoft 服务绕过此防火墙”设置。
- 将使用事件中心的事件订阅配置为终结点,以使用系统分配或用户分配的托管标识。
使用托管标识将事件传递到服务总线
若要使用托管标识将事件传递到服务总线命名空间中的服务总线队列或主题,请执行以下步骤:
- 启用系统分配或用户分配的托管标识:系统主题、自定义主题和域。
- 为服务总线命名空间中的“Azure 服务总线数据发送方”角色添加标识
- 在服务总线命名空间中启用“允许受信任的 Microsoft 服务绕过此防火墙”设置。
- 将使用服务总线队列或主题的事件订阅配置为终结点,以使用系统分配或用户分配的托管标识。
使用托管标识将事件传递到存储
若要使用托管标识将事件传递到存储队列,请执行以下步骤:
- 启用系统分配或用户分配的托管标识:系统主题、自定义主题和域。
- 为 Azure 存储队列上的“存储队列数据消息发送方”角色添加标识。
- 将使用存储队列的事件订阅配置为终结点,以使用系统分配或用户分配的托管标识。
防火墙和虚拟网络规则
如果没有为目标存储帐户、事件中心命名空间或服务总线命名空间配置防火墙或虚拟网络规则,可以使用用户分配的标识和系统分配的标识来传递事件。
如果为目标存储帐户、事件中心命名空间或服务总线命名空间配置了防火墙或虚拟网络规则,并且目标上还启用了“允许受信任服务列表上的 Azure 服务访问此存储帐户”,那么你只能使用系统分配的托管标识。 无论是否启用此选项,都无法使用用户分配的托管标识。
相关内容
若要详细了解如何使用托管标识来传递事件,请参阅使用托管标识的事件传递。