Authentifier la remise des événements aux gestionnaires d’événements (Azure Event Grid)

Cet article fournit des informations sur l’authentification de la remise d’événements auprès de gestionnaires d’événements.

Vue d'ensemble

Azure Event Grid utilise différentes méthodes d’authentification pour remettre des événements aux gestionnaires d’événements. `

Méthode d'authentification Gestionnaires d’événements pris en charge Description
Clé d’accès – Event Hubs
– Service Bus
– Files d'attente de stockage
– Connexions hybrides relais
- Azure Functions
– Blobs de stockage (lettre morte)
Les clés d’accès sont extraites à l’aide des informations d’identification du principal de service Event Grid. Les autorisations sont accordées à Event Grid lorsque vous inscrivez le fournisseur de ressources Event Grid dans son abonnement Azure.
Identité système managée
&
Contrôle d’accès en fonction du rôle
– Event Hubs
– Service Bus
– Files d'attente de stockage
– Blobs de stockage (lettre morte)
Activez l’identité système managée pour la rubrique et ajoutez-la au rôle approprié sur la destination. Pour plus de détails, consultez Utiliser des identités attribuées par le système pour la remise d’événements.
Authentification du jeton du porteur avec le webhook protégé Microsoft Entra webhook Consultez la section Authentifier la remise des événements aux points de terminaison du webhook pour plus de détails.
Secret client comme paramètre de requête webhook Voir la section Utilisation d’un secret client comme paramètre de requête pour plus de détails.

Remarque

Si vous protégez votre fonction Azure avec une application Microsoft Entra, vous devrez adopter l'approche webhook générique en utilisant le déclencheur HTTP. Utilisez le point de terminaison de fonction Azure comme URL de webhook lors de l’ajout de l’abonnement.

Utiliser des identités attribuées par le système pour la remise d’événements

Vous pouvez activer une identité gérée attribuée par le système pour une rubrique ou un domaine et utiliser cette identité pour transférer des événements vers des destinations prises en charge, comme les files d’attente et les rubriques Service Bus, les concentrateurs d’événements et les comptes de stockage.

Voici la procédure à suivre :

  1. Créer une rubrique ou un domaine avec une identité affectée par le système, ou mettre à jour une rubrique ou un domaine existants pour activer une identité. Pour plus d’informations, voir Activer l’identité managée pour une rubrique système ou Activer l’identité managée pour une rubrique personnalisée ou un domaine.
  2. Ajouter l’identité à un rôle approprié (par exemple, expéditeur de données Service Bus) sur la destination (par exemple, une file d’attente Service Bus). Pour plus d’informations, consultez Accorder à l’identité l’accès à la destination Event Grid
  3. Lors de la création d’abonnements à des événements, activer l’utilisation de l’identité pour remettre des événements à la destination. Pour plus d’informations, consultez Créer un abonnement à l’événement utilisant l’identité.

Pour obtenir des instructions pas à pas détaillées, consultez Remise d’événements avec une identité gérée.

Authentifier la remise des événements aux points de terminaison webhook

Les sections suivantes décrivent comment authentifier la remise d’événements aux points de terminaison webhook. Utilisez un mécanisme de négociation de validation, quelle que soit la méthode que vous utilisez. Pour plus d’informations, consultez Remise d’événements webhook.

Utilisation de Microsoft Entra ID

Vous pouvez sécuriser le point de terminaison du webhook utilisé pour recevoir des événements d’Event Grid à l’aide de Microsoft Entra ID. Vous devez créer une application Microsoft Entra, créer un rôle et un principal de service dans votre application autorisant Event Grid, et configurer l'abonnement aux événements pour utiliser l'application Microsoft Entra. Découvrez comment Configurer Microsoft Entra ID avec Event Grid.

Utilisation d’un secret client comme paramètre de requête

Vous pouvez également sécuriser votre point de terminaison webhook en ajoutant des paramètres de requête à l’URL de destination webhook spécifiée lors de la création d’un abonnement à un événement. Définissez l’un des paramètres de requête en tant que clé secrète client, par exemple un jeton d’accès ou un secret partagé. Le service Event Grid inclut tous les paramètres de requête dans chaque demande de remise d’événement au webhook. Le service webhook peut récupérer et valider le secret. Si le secret client est mis à jour, l’abonnement aux événements doit également être mis à jour. Pour éviter les échecs de remise pendant cette rotation de secret, faites en sorte que le webhook accepte l’ancien et le nouveau secrets pendant une durée limitée avant de mettre à jour l’abonnement à l’événement avec le nouveau secret.

Étant donné que les paramètres de requête peuvent contenir des secrets client, ils sont traités avec un soin particulier. Ils sont stockés sous forme cryptée et ne sont pas accessibles aux opérateurs de services. Ils ne sont pas enregistrés dans les journaux/traces du service. Lors de la récupération des propriétés de l’abonnement à l’événement, par défaut, les paramètres de requête de destination ne sont pas retournés. Par exemple, le paramètre --include-full-endpoint-url doit être utilisé dans Azure CLI.

Pour plus d’informations sur la remise d’événements à des webhooks, consultez Remise d’événements webhook

Important

Azure Event Grid ne prend en charge que les points de terminaison webhook HTTPS.

Validation de point de terminaison avec CloudEvents v1.0

Si vous êtes déjà familiarisé avec Event Grid, vous pouvez être conscient de l’établissement d'une liaison de validation de point de terminaison pour empêcher les abus. CloudEvents v1.0 implémente sa propre sémantique de protection contre les abus à l’aide de la méthode HTTP OPTIONS. Pour en savoir plus à ce sujet, consultez Webhooks HTTP 1.1 pour la remise d’événements (version 1.0). Lorsque vous utilisez le schéma CloudEvents pour la sortie, Event Grid l’utilise avec la protection contre les abus CloudEvents v1.0 à la place du mécanisme d’événement de validation Event Grid. Pour plus d’informations, consultez Utiliser le schéma CloudEvents v1.0 avec Event Grid.

Étapes suivantes

Consultez Authentifier les clients de publication pour en savoir plus sur l’authentification des événements de publication des clients dans des rubriques ou des domaines.