Azure Policy en tant que source Event Grid

Cet article fournit les propriétés et les schémas des événements Azure Policy. Pour une présentation des schémas d’événements, consultez Schéma d’événements Azure Event Grid. Cet article fournit également une liste de guides de démarrage rapide et de tutoriels permettant d’utiliser Azure Policy en tant que source d’événement.

Types d’événement disponibles

Azure Policy émet les types d’événements suivants :

Type d'événement Description
Microsoft.PolicyInsights.PolicyStateCreated Déclenché lorsqu’un état de conformité à une stratégie est créé.
Microsoft.PolicyInsights.PolicyStateChanged Déclenché lorsqu’un état de conformité à une stratégie est modifié.
Microsoft.PolicyInsights.PolicyStateDeleted Déclenché lorsqu’un état de conformité à une stratégie est supprimé.

Propriétés d’événement

Un événement contient les données générales suivantes :

Propriété Type Description
topic string Chemin d’accès complet à la source de l’événement. Ce champ n’est pas modifiable. Event Grid fournit cette valeur.
subject string Identifiant complet de la ressource concernée par le changement de l’état de conformité, y compris le nom et le type de la ressource. Utilise le format, /subscriptions/<SubscriptionID>/resourceGroups/<ResourceGroup>/providers/<ProviderNamespace>/<ResourceType>/<ResourceName>
eventType string Un des types d’événements inscrits pour cette source d’événement.
eventTime string L’heure à quelle l’événement est généré selon l’heure UTC du fournisseur.
id string Identificateur unique de l’événement.
data object Données d’événement Azure Policy.
dataVersion string Version du schéma de l’objet de données. Le serveur de publication définit la version du schéma.
metadataVersion string Version du schéma des métadonnées d’événement. Event Grid définit le schéma des propriétés de niveau supérieur. Event Grid fournit cette valeur.

L’objet de données comporte les propriétés suivantes :

Propriété Type Description
timestamp string Heure (UTC) à laquelle la ressource a été analysée par Azure Policy. Pour trier les événements, utilisez cette propriété à la place des propriétés eventTime ou time de niveau supérieur.
policyAssignmentId string ID de ressource de l’attribution de stratégie.
policyDefinitionId string ID de ressource de la définition de stratégie.
policyDefinitionReferenceId string ID de référence de la définition de stratégie dans la définition de l’initiative, si l’attribution de la stratégie concerne une initiative. Peut être vide.
complianceState string État de conformité de la ressource par rapport à l’attribution de stratégie.
subscriptionId string ID d’abonnement de la ressource.
complianceReasonCode string Code de raison de la conformité. Peut être vide.

Exemple d’événement

L’exemple suivant montre le schéma d’un événement de création de l’état de la stratégie délimité au niveau de l’abonnement :

[{
    "id": "5829794FCB5075FCF585476619577B5A5A30E52C84842CBD4E2AD73996714C4C",
    "topic": "/subscriptions/<SubscriptionID>",
    "subject": "/subscriptions/<SubscriptionID>/resourceGroups/<ResourceGroup>/providers/<ProviderNamespace>/<ResourceType>/<ResourceName>",
    "data": {
        "timestamp": "2021-03-27T18:37:42.4496956Z",
        "policyAssignmentId": "<policy-assignment-scope>/providers/microsoft.authorization/policyassignments/<policy-assignment-name>",
        "policyDefinitionId": "<policy-definition-scope>/providers/microsoft.authorization/policydefinitions/<policy-definition-name>",
        "policyDefinitionReferenceId": "",
        "complianceState": "NonCompliant",
        "subscriptionId": "<subscription-id>",
        "complianceReasonCode": ""
    },
    "eventType": "Microsoft.PolicyInsights.PolicyStateCreated",
    "eventTime": "2021-03-27T18:37:42.5241536Z",
    "dataVersion": "1",
    "metadataVersion": "1"
}]

Le schéma d’un événement modifié d’état de stratégie délimité au niveau de l’abonnement est similaire :

[{
    "id": "5829794FCB5075FCF585476619577B5A5A30E52C84842CBD4E2AD73996714C4C",
    "topic": "/subscriptions/<SubscriptionID>",
    "subject": "/subscriptions/<SubscriptionID>/resourceGroups/<ResourceGroup>/providers/<ProviderNamespace>/<ResourceType>/<ResourceName>",
    "data": {
        "timestamp": "2021-03-27T18:37:42.4496956Z",
        "policyAssignmentId": "<policy-assignment-scope>/providers/microsoft.authorization/policyassignments/<policy-assignment-name>",
        "policyDefinitionId": "<policy-definition-scope>/providers/microsoft.authorization/policydefinitions/<policy-definition-name>",
        "policyDefinitionReferenceId": "",
        "complianceState": "NonCompliant",
        "subscriptionId": "<subscription-id>",
        "complianceReasonCode": ""
    },
    "eventType": "Microsoft.PolicyInsights.PolicyStateChanged",
    "eventTime": "2021-03-27T18:37:42.5241536Z",
    "dataVersion": "1",
    "metadataVersion": "1"
}]

L’exemple suivant montre le schéma d’un événement créé à l’état de stratégie délimité au niveau du groupe d’administration :

[{
    "id": "5829794FCB5075FCF585476619577B5A5A30E52C84842CBD4E2AD73996714C4C",
    "topic": "/tenants/<tenantId>/providers/Microsoft.Management/managementGroups/<managementGroupId>",
    "subject": "/subscriptions/<SubscriptionID>/resourceGroups/<ResourceGroup>/providers/<ProviderNamespace>/<ResourceType>/<ResourceName>",
    "data": {
        "timestamp": "2021-03-27T18:37:42.4496956Z",
        "policyAssignmentId": "<policy-assignment-scope>/providers/microsoft.authorization/policyassignments/<policy-assignment-name>",
        "policyDefinitionId": "<policy-definition-scope>/providers/microsoft.authorization/policydefinitions/<policy-definition-name>",
        "policyDefinitionReferenceId": "",
        "complianceState": "NonCompliant",
        "subscriptionId": "<subscription-id>",
        "complianceReasonCode": ""
    },
    "eventType": "Microsoft.PolicyInsights.PolicyStateCreated",
    "eventTime": "2021-03-27T18:37:42.5241536Z",
    "dataVersion": "1",
    "metadataVersion": "1"
}]

Le schéma d’un événement modifié à l’état de stratégie délimité au niveau du groupe d’administration est similaire :

[{
    "id": "5829794FCB5075FCF585476619577B5A5A30E52C84842CBD4E2AD73996714C4C",
    "topic": "/tenants/<tenantId>/providers/Microsoft.Management/managementGroups/<managementGroupId>",
    "subject": "/subscriptions/<SubscriptionID>/resourceGroups/<ResourceGroup>/providers/<ProviderNamespace>/<ResourceType>/<ResourceName>",
    "data": {
        "timestamp": "2021-03-27T18:37:42.4496956Z",
        "policyAssignmentId": "<policy-assignment-scope>/providers/microsoft.authorization/policyassignments/<policy-assignment-name>",
        "policyDefinitionId": "<policy-definition-scope>/providers/microsoft.authorization/policydefinitions/<policy-definition-name>",
        "policyDefinitionReferenceId": "",
        "complianceState": "NonCompliant",
        "subscriptionId": "<subscription-id>",
        "complianceReasonCode": ""
    },
    "eventType": "Microsoft.PolicyInsights.PolicyStateChanged",
    "eventTime": "2021-03-27T18:37:42.5241536Z",
    "dataVersion": "1",
    "metadataVersion": "1"
}]

Étapes suivantes