创建通知集成,向 Microsoft Azure 事件网格主题发送通知

要向 Microsoft Azure 事件网格主题发送通知,必须为该主题创建通知集成。要这样做,请执行以下操作:

  1. 创建自定义事件网格主题

  2. 创建通知集成

第 1 步:创建自定义事件网格主题

事件网格主题提供源发送事件通知的端点。创建专用主题,接收 Snowflake 发布的通知。

备注

如果计划使用主题来通知 任务管道 中的错误,可以使用单个主题来通知所有任务或管道的错误。

有关创建事件网格主题的说明,请参阅 事件网格文档 (https://docs.microsoft.com/en-us/azure/event-grid/custom-event-quickstart)。

记录事件网格主题端点,稍后您将在这些说明中需要它。

(可选)订阅该主题,以告知事件网格您想要跟踪哪些事件以及将这些事件发送到何处。

第 2 步:在 Snowflake 中创建通知集成

检索租户 ID

检索 Azure 租户 ID,稍后您将在这些说明中需要它。

  1. 登录 Microsoft Azure 门户。

  2. 导航到 Azure Active Directory » Properties。记录 Tenant ID 值以供以后参考。需要目录 ID 或 租户 ID 来生成授予 Snowflake 访问事件网格主题的许可 URL。

创建通知集成

运行 CREATE NOTIFICATION INTEGRATION 命令创建通知集成。集成是一个引用您创建的事件网格主题的 Snowflake 对象。

运行命令时,为推送通知设置参数。云提供商参数:

例如:

CREATE NOTIFICATION INTEGRATION my_notification_int
  ENABLED = TRUE
  DIRECTION = OUTBOUND
  TYPE = QUEUE
  NOTIFICATION_PROVIDER = AZURE_EVENT_GRID
  AZURE_EVENT_GRID_TOPIC_ENDPOINT = 'https://myaccount.region-1.eventgrid.azure.net/api/events'
  AZURE_TENANT_ID = 'mytenantid';
Copy

授予 Snowflake 对该主题的访问权限

  1. 执行 DESCRIBE INTEGRATION 命令以显示您刚刚创建的通知集成的属性。

    例如,要显示名为 my_notification_int 的通知集成的属性,请执行以下操作:

  2. 记录以下属性的值:

    • AZURE_CONSENT_URL

      Microsoft 权限请求页面的 URL。

    • AZURE_MULTI_TENANT_APP_NAME

      为账户创建的 Snowflake 客户端应用程序的名称。在本部分后面的步骤中,需要授予此应用程序必要的权限,使其获取允许主题的访问令牌。

  3. 在 Web 浏览器中,导航到 AZURE_CONSENT_URL 属性指定的 URL。该页面显示 Microsoft 权限请求页面。

  4. 选择 Accept。此操作允许向为 Snowflake 账户创建的 Azure 服务主体授予对租户内指定资源的访问令牌。仅当您授予服务主体对容器的适当权限时,才能成功获取访问令牌(请参阅下一步)。

    Microsoft 权限请求页面会重定向到 Snowflake 公司站点 (snowflake.com)。

  5. 登录 Microsoft Azure 门户。

  6. 导航到 Azure Active Directory » Enterprise applications。验证您之前记录的 Snowflake 应用程序标识符(AZURE_MULTI_TENANT_APP_NAME 属性的值)是否已列出。

    重要

    如果以后在 Azure AD 中删除 Snowflake 应用程序,通知集成将会停止工作。

  7. 导航到 Event Grid Topics » topic_name,其中 topic_name 是您创建的用于接收事件通知的主题名称。

  8. 选择 Access Control (IAM) » Add role assignment

  9. 搜索 Snowflake 服务主体。这是您之前记录的 AZURE_MULTI_TENANT_APP_NAME 属性中的标识。在 AZURE_MULTI_TENANT_APP_NAME 属性中搜索下划线 之前 的字符串。

    重要

    • Azure 可能需要一个小时或更长时间才能创建通过此部分中的 Microsoft 请求页面请求的 Snowflake 服务主体。如果服务主体不能立即使用,我们建议等待一两个小时,然后再次搜索。

    • 如果删除服务主体,通知集成将停止工作。

  10. 授予 Snowflake 应用程序 EventGrid 数据发送者 (https://docs.microsoft.com/en-us/azure/role-based-access-control/built-in-roles#eventgrid-data-sender) 权限。

语言: 中文