Partager via


Propriétés de remise personnalisées

Les abonnements aux événements vous permettent de définir des en-têtes HTTP qui sont inclus dans les événements remis. Cette fonctionnalité vous permet de définir des en-têtes personnalisés requis par une destination. Vous pouvez configurer jusqu’à 10 en-têtes lors de la création d’un abonnement aux événements. La valeur de chaque en-tête ne doit pas être supérieure à 4 096 (4 Ko) octets.

Vous pouvez définir des en-têtes personnalisés sur les événements remis aux destinations suivantes :

  • Webhooks
  • Rubriques et files d’attente Azure Service Bus
  • Azure Event Hubs
  • Azure Functions
  • Connexions hybrides Azure Relay

Note

Les valeurs non conformes dans les en-têtes connus entraînent la suppression de l'en-tête lors de la livraison de l'événement aux destinations du webhook, mais pas lors de la validation du webhook.

When creating an event subscription in the Azure portal, you can use the Delivery Properties tab to set custom HTTP headers. Cette page vous permet de définir des valeurs d’en-tête fixes et dynamiques.

Définition de valeurs d’en-tête statique

Pour définir des en-têtes avec une valeur fixe, indiquez le nom de l’en-tête et sa valeur dans les champs correspondants :

Propriétés de remise – Statique

You might want to check Is secret? when you're providing sensitive data. La visibilité des données sensibles sur le Portail Azure dépend de l’autorisation RBAC de l’utilisateur.

Définition de valeurs d’en-tête dynamique

Vous pouvez définir la valeur d’un en-tête en fonction d’une propriété dans un événement entrant. Utilisez la syntaxe JsonPath pour faire référence à la valeur de propriété d’un événement entrant à utiliser comme valeur pour un en-tête dans des demandes sortantes. Seules les valeurs JSON de chaîne, de nombre et de booléen sont prises en charge. For example, to set the value of a header named Channel using the value of the incoming event property system in the event data, configure your event subscription in the following way:

Propriétés de remise – Dynamique

Utiliser l’interface de ligne de commande Microsoft Azure

Utilisez le paramètre --delivery-attribute-mapping lors de la création d’un abonnement à l’aide la commande az eventgrid event-subscription create. Voici un exemple :

az eventgrid event-subscription create -n es1 \
    --source-resource-id /subscriptions/{SubID}/resourceGroups/{RG}/providers/Microsoft.EventGrid/topics/topic1
    --endpoint-type storagequeue \
    --endpoint /subscriptions/{SubID}/resourceGroups/TestRG/providers/Microsoft.Storage/storageAccounts/sa1/queueservices/default/queues/q1 \
    --enable-advanced-filtering-on-arrays true
    --delivery-attribute-mapping staticproperty1 static somestaticvalue2 true 
    --delivery-attribute-mapping staticproperty2 static somestaticvalue3 false 
    --delivery-attribute-mapping dynamicproperty1 dynamic data.key1

Examples

Cette section fournit quelques exemples d’utilisation d’utilisation des propriétés de remise.

Définition de l’en-tête Authorization avec un jeton du porteur (exemple non normatif)

Définissez une valeur sur un en-tête Authorization pour identifier la demande auprès de votre gestionnaire de webhook. Vous pouvez définir un en-tête d’autorisation si vous ne protégez pas votre Webhook avec Microsoft Entra ID.

Header name Header type Header value
Authorization Static BEARER SlAV32hkKG...

Les demandes sortantes doivent maintenant contenir l’en-tête défini sur l’abonnement aux événements :

POST /home.html HTTP/1.1
Host: acme.com

Authorization: BEARER SlAV32hkKG...

Note

La définition d’en-têtes Authorization est une option raisonnable quand votre destination est un webhook. Il ne faut pas l’utiliser pour des fonctions souscrites avec un ID de ressource, Service Bus, Event Hubs et Connexions hybrides, car ces destinations prennent en charge leurs propres schémas d’authentification quand elle sont utilisées avec Event Grid.

Exemple Service Bus

Azure Service Bus prend en charge l’utilisation des propriétés de message suivantes lors de l’envoi de messages uniques.

Header name Header type
MessageId Dynamic
PartitionKey Statique ou dynamique
SessionId Statique ou dynamique
CorrelationId Statique ou dynamique
Label Statique ou dynamique
ReplyTo Statique ou dynamique
ReplyToSessionId Statique ou dynamique
To Statique ou dynamique
ViaPartitionKey Statique ou dynamique

Note

  • La valeur par défaut de MessageId est l’ID interne de l’événement Event Grid. Vous pouvez la remplacer. Par exemple : data.field.
  • Vous pouvez définir uniquement SessionId ou MessageId.

Vous pouvez aussi spécifier des propriétés personnalisées lors de l’envoi de messages à des files d’attente ou des rubriques Service Bus. N’utilisez pas le préfixe aeg-, car il est utilisé par des propriétés système dans les en-têtes de message. Pour obtenir la liste des propriétés des en-têtes de message, consultez Service Bus en tant que gestionnaire d’événements

Exemple Event Hubs

Si vous devez publier des événements dans une partition spécifique au sein d’un Event Hub, définissez une propriété PartitionKey sur votre abonnement aux événements pour spécifier la clé de partition qui identifie la partition Event Hub cible.

Header name Header type
PartitionKey Statique ou dynamique

Vous pouvez aussi spécifier des propriétés personnalisées lors de l’envoi de messages à un hub d’événements. N’utilisez pas le préfixe aeg- pour le nom des propriétés, car il est utilisé par des propriétés système dans les en-têtes de message. Pour obtenir la liste des propriétés des en-têtes de message, consultez Event Hubs en tant que gestionnaire d’événements

Configurer la durée de vie des événements sortants vers les files d’attente de Stockage Azure

Pour la destination des files d’attente de Stockage Azure, vous pouvez uniquement configurer la durée de vie du message sortant, une fois celui-ci remis à une file d’attente de Stockage Azure. Si aucun temps n’est fourni, la durée de vie par défaut du message est de 7 jours. Vous pouvez également définir l’événement pour qu’il n’expire jamais.

Propriétés de remise – File d’attente de stockage

Next steps

Pour plus d’informations sur la remise d’événements, consultez l’article suivant :