可以通过订阅特定命名空间主题来设置 Webhook 终结点以处理特定命名空间主题上的事件。 如果任何公共终结点使用传输中加密 (HTTPS
),则可以用作事件处理程序,可以读取使用受支持的 CloudEvents 元数据格式的事件,并处理 Webhook 验证。
无需在 Azure 上托管 Webhook,这意味着可以使用托管在其他地方的 Webhook 来处理应用程序中的事件。 它使你能够灵活地在任何最符合特定需求和要求的服务提供程序中选择 Webhook。
Webhook 验证
如果 Webhook 终结点被恶意参与者得知,他们可能会利用攻击途径,例如启动拒绝服务攻击。 若要保护 Webhook 不受意外事件传递的影响,Webhook 需要指示其是否同意事件传递。 意外传递甚至可能发生在无意中创建了对终结点的事件订阅的人员身上。 为此,终结点必须使用 CloudEvents 对 Webhook 的滥用保护来处理 Webhook 验证。 事件网格遵循该方法并作为事件订阅创建的一部分,会发送一个验证请求,后跟适当的验证响应。 如果验证未通过,则事件订阅创建失败。
重要
验证 Webhook 时,事件网格不支持以下功能:
-
WebHook-Request-Callback
。 这意味着,你或你的 Webhook 无法异步响应事件网格的验证请求。 -
WebHook-Request-Rate
。 也就是说,事件网格不会请求与 Webhook 终结点通信的数据速率。 如果 Webhook 使用WebHook-Allowed-Rate
标头进行响应,则忽略该标头。
Webhook
请参阅使用命名空间主题将事件传递到 Webhook - Azure CLI,该主题提供分步说明,以 CloudEvents JSON 格式将事件发布到 Azure 事件网格,并使用推送传递模型传递这些事件。
相关内容
- 请参阅事件网格的推送传递和重试,了解 Webhook 不可用时的事件重试计划。
- 使用命名空间主题将事件传递到 Webhook