Création d’une intégration de notification pour envoyer des notifications à un sujet Microsoft Azure Event Grid

Pour envoyer des notifications à une rubrique de Microsoft Azure Event Grid, vous devez créer une intégration de notification pour ce sujet. Pour ce faire :

  1. Créez un sujet Event Grid personnalisé.

  2. Créez une intégration de notification.

Note

Cette fonctionnalité est actuellement limitée aux comptes Snowflake hébergés sur Microsoft Azure.

Créer un sujet Event Grid personnalisé

Une rubrique Event Grid fournit un point de terminaison où la source envoie des notifications d’événements. Créez un sujet dédié pour recevoir les notifications publiées par Snowflake.

Note

Si vous prévoyez d’utiliser le sujet pour les notifications d’erreurs dans les tâches ou les canaux, vous pouvez utiliser un seul sujet pour les notifications d’erreurs pour toutes les tâches ou tous les canaux.

Pour obtenir des instructions sur la création de rubriques Event Grid, consultez la documentation Event Grid.

Enregistrez le point de terminaison de la rubrique Event Grid, dont vous aurez besoin plus tard dans ces instructions.

Vous pouvez également vous abonner au sujet pour indiquer à Event Grid les événements que vous souhaitez suivre et où envoyer ces événements.

Créer une intégration de notification dans Snowflake

Récupérer l’ID du client

Récupérez votre ID de client Azure, dont vous aurez besoin plus tard dans ces instructions.

  1. Connectez-vous au portail Microsoft Azure.

  2. Accédez à Azure Active Directory » Properties. Enregistrez la valeur Tenant ID pour référence plus tard. L’ID de répertoire , ou ID de client, est nécessaire pour générer l’URL de consentement qui accorde à Snowflake l’accès à la rubrique Event Grid.

Créer l’intégration des notifications

Exécutez la commande CREATE NOTIFICATION INTEGRATION pour créer une intégration de notification. Une intégration est un objet Snowflake qui fait référence au sujet Event Grid que vous avez créé.

Lors de l’exécution de la commande, définissez ces paramètres sur les valeurs suivantes :

Par exemple :

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

Accorder un accès à Snowflake au sujet

  1. Exécutez la commande DESCRIBE INTEGRATION pour afficher les propriétés de l’intégration de notification que vous venez de créer.

    Par exemple, pour afficher les propriétés de l’intégration de notification nommée my_notification_int :

  2. Notez les valeurs des propriétés suivantes :

    • AZURE_CONSENT_URL

      URL vers la page de demande d’autorisations de Microsoft.

    • AZURE_MULTI_TENANT_APP_NAME

      Nom de l’application client Snowflake créée pour votre compte. Plus loin dans cette section, vous devrez accorder à cette application les autorisations nécessaires pour obtenir un jeton d’accès sur votre sujet autorisé.

  3. Dans un navigateur Web, naviguez vers l’URL spécifiée par la propriété AZURE_CONSENT_URL. La page affiche une page de demande d’autorisations Microsoft.

  4. Sélectionnez Accept. Cette action permet au principal du service Azure créé pour votre compte Snowflake d’obtenir un jeton d’accès sur des ressources spécifiées à l’intérieur de votre client. L’obtention d’un jeton d’accès ne réussit que si vous accordez au principal du service les autorisations appropriées sur le conteneur (voir l’étape suivante).

    La page de demande d’autorisations Microsoft redirige vers le site d’entreprise de Snowflake (snowflake.com).

  5. Connectez-vous au portail Microsoft Azure.

  6. Accédez à Azure Active Directory » Enterprise applications. Vérifiez que l’identificateur d’application Snowflake que vous avez enregistré précédemment (la valeur de la propriété AZURE_MULTI_TENANT_APP_NAME) est bien dans la liste.

    Important

    Si vous supprimez l’application Snowflake dans Azure Active Directory plus tard, l’intégration des notifications cesse de fonctionner.

  7. Naviguez jusqu’à Event Grid Topics » topic_name, où topic_name est le nom de la rubrique que vous avez créée pour recevoir les notifications d’événements.

  8. Sélectionnez Access Control (IAM) » Add role assignment.

  9. Recherchez le principal de service Snowflake. Il s’agit de l’identité de la propriété AZURE_MULTI_TENANT_APP_NAME que vous avez enregistrée plus tôt. Recherchez la chaîne avant le trait de soulignement dans la propriété AZURE_MULTI_TENANT_APP_NAME.

    Important

    • Azure peut prendre une heure ou plus pour créer le principal de service Snowflake demandé via la page de demande Microsoft dans cette section. Si le principal de service n’est pas disponible immédiatement, nous vous recommandons d’attendre une heure ou deux, puis de relancer la recherche.

    • Si vous supprimez le principal de service, l’intégration de notification cesse de fonctionner.

  10. Accordez à l’application Snowflake l’autorisation EventGrid Data Sender.