Azure Policy als Event Grid-Quelle
In diesem Artikel werden die Eigenschaften und das Schema für Azure Policy-Ereignisse angegeben. Eine Einführung in Ereignisschemas finden Sie unter Azure Event Grid-Ereignisschema. Außerdem erhalten Sie eine Liste mit Schnellstarts und Tutorials, die Azure Policy als Ereignisquelle verwenden.
Verfügbare Ereignistypen
Azure Policy gibt die folgenden Ereignistypen aus:
Ereignistyp | BESCHREIBUNG |
---|---|
Microsoft.PolicyInsights.PolicyStateCreated | Wird ausgelöst, wenn ein Zustand der Richtlinienkonformität erstellt wird. |
Microsoft.PolicyInsights.PolicyStateChanged | Wird ausgelöst, wenn ein Status der Richtlinienkonformität geändert wird. |
Microsoft.PolicyInsights.PolicyStateDeleted | Wird ausgelöst, wenn ein Status der Richtlinienkonformität gelöscht wird. |
Ereigniseigenschaften
Ein Ereignis weist die folgenden Daten auf oberster Ebene aus:
Eigenschaft | Typ | BESCHREIBUNG |
---|---|---|
topic |
Zeichenfolge | Vollständiger Ressourcenpfaf zur Ereignisquelle. Dieses Feld ist nicht beschreibbar. Dieser Wert wird von Event Grid bereitgestellt. |
subject |
Zeichenfolge | Die vollständig qualifizierte ID der Ressource, für die die Änderung des Konformitätsstatus gilt, einschließlich des Ressourcennamens und des Ressourcentyps. Verwendet das Format /subscriptions/<SubscriptionID>/resourceGroups/<ResourceGroup>/providers/<ProviderNamespace>/<ResourceType>/<ResourceName> . |
eventType |
Zeichenfolge | Einer der registrierten Ereignistypen für die Ereignisquelle. |
eventTime |
Zeichenfolge | Die Zeit, in der das Ereignis generiert wird, basierend auf der UTC-Zeit des Anbieters. |
id |
Zeichenfolge | Eindeutiger Bezeichner für das Ereignis. |
data |
Objekt (object) | Azure Policy-Ereignisdaten. |
dataVersion |
Zeichenfolge | Die Schemaversion des Datenobjekts. Der Herausgeber definiert die Schemaversion. |
metadataVersion |
Zeichenfolge | Die Schemaversion der Ereignismetadaten. Event Grid definiert das Schema der Eigenschaften der obersten Ebene. Dieser Wert wird von Event Grid bereitgestellt. |
Das Datenobjekt weist die folgenden Eigenschaften auf:
Eigenschaft | Typ | BESCHREIBUNG |
---|---|---|
timestamp |
Zeichenfolge | Die Zeit (in UTC), zu der die Ressource von Azure Policy gescannt wurde. Verwenden Sie zum Sortieren von Ereignissen diese Eigenschaft anstelle der Eigenschaften der obersten Ebene eventTime oder time . |
policyAssignmentId |
Zeichenfolge | Die Ressourcen-ID der Richtlinienzuweisung. |
policyDefinitionId |
Zeichenfolge | Die Ressourcen-ID der Richtliniendefinition. |
policyDefinitionReferenceId |
Zeichenfolge | Die Verweis-ID für die Richtliniendefinition innerhalb der Initiativendefinition, wenn die Richtlinienzuweisung für eine Initiative vorgesehen ist. Kann leer sein. |
complianceState |
Zeichenfolge | Der Konformitätszustand der Ressource in Bezug auf die Richtlinienzuweisung. |
subscriptionId |
Zeichenfolge | Die Abonnement-ID der Ressource. |
complianceReasonCode |
Zeichenfolge | Der Konformitätsursachencode. Kann leer sein. |
Beispielereignis
Das folgende Beispiel zeigt das Schema eines auf der Abonnementebene erstellten Ereignisses mit dem Richtlinienstatus:
[{
"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"
}]
Das Schema für ein Ereignis zur Änderung des Zustands einer Richtlinie auf der Abonnementebene ist ähnlich:
[{
"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"
}]
Das folgende Beispiel zeigt das Schema eines auf der Ebene der Verwaltungsgruppe erstellten Ereignisses mit dem Richtlinienstatus:
[{
"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"
}]
Das Schema für ein Ereignis zur Änderung des Zustands einer Richtlinie auf der Verwaltungsgruppenebene ist ähnlich:
[{
"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"
}]
Nächste Schritte
- Eine exemplarische Vorgehensweise für das Routing von Azure Policy-Zustandsänderungsereignissen finden Sie unter Verwenden von Event Grid für Benachrichtigungen über Richtlinienzustandsänderungen.
- Eine Übersicht über die Integration von Azure Policy in Event Grid finden Sie unter Reagieren auf Azure Policy-Ereignisse mithilfe von Event Grid.
- Eine Einführung zu Azure Event Grid finden Sie unter Einführung in Azure Event Grid.
- Weitere Informationen zum Erstellen eines Azure Event Grid-Abonnements finden Sie unter Event Grid-Abonnementschema.