Überwachung AWS Identity and Access Management Access Analyzer mit Amazon EventBridge - AWS Identitäts- und Zugriffsverwaltung

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Überwachung AWS Identity and Access Management Access Analyzer mit Amazon EventBridge

Anhand der Informationen in diesem Thema erfahren Sie, wie Sie die Ergebnisse von IAM Access Analyzer überwachen und auf Vorschauen mit Amazon zugreifen können. EventBridge EventBridge ist die neue Version von Amazon CloudWatch Events.

Ergebnis-Ereignisse

IAM Access Analyzer sendet EventBridge für jedes generierte Ergebnis ein Ereignis an, wenn der Status eines vorhandenen Ergebnisses geändert wird und wenn ein Ergebnis gelöscht wird. Um Ergebnisse und Benachrichtigungen über Ergebnisse zu erhalten, müssen Sie in Amazon eine Ereignisregel erstellen EventBridge. Bei Erstellung einer Ereignisregel können Sie auch eine Zielaktion angeben, die basierend auf der Regel ausgelöst werden soll. Sie könnten beispielsweise eine Ereignisregel erstellen, die ein Amazon-SNS-Thema auslöst, wenn ein Ereignis für ein neues Ergebnis von IAM Access Analyzer empfangen wird. Einzelheiten zur Ressourcenkontrollrichtlinie (RCP) finden Sie im Abschnitt mit den Ereignisdetails.

Zugriff auf Ereignisse in der Vorschau

IAM Access Analyzer sendet EventBridge für jede Zugriffsvorschau und Statusänderung ein Ereignis an. Dazu gehört ein Ereignis, wenn die Zugriffsvorschau zum ersten Mal erstellt wird (Status Erstellen), wenn die Zugriffsvorschau abgeschlossen ist (Status Abgeschlossen), oder wenn die Erstellung der Zugriffsvorschau fehlgeschlagen ist (Status Fehlgeschlagen). Um Benachrichtigungen über Zugriffsvorschauen zu erhalten, müssen Sie in eine Ereignisregel erstellen. EventBridge Bei Erstellung einer Ereignisregel können Sie auch eine Zielaktion angeben, die basierend auf der Regel ausgelöst werden soll. Sie könnten beispielsweise eine Ereignisregel erstellen, die ein Amazon-SNS-Thema auslöst, wenn ein Ereignis für eine abgeschlossene Zugriffsvorschau von IAM Access Analyzer empfangen wird.

Häufigkeit der Ereignisbenachrichtigung

IAM Access Analyzer sendet Ereignisse für neue Ergebnisse und Ergebnisse mit Statusaktualisierungen EventBridge innerhalb von etwa einer Stunde, nachdem das Ereignis in Ihrem Konto eingetreten ist. IAM Access Analyzer sendet Ereignisse auch EventBridge dann, wenn ein behobenes Ergebnis gelöscht wurde, weil die Aufbewahrungsfrist abgelaufen ist. Bei Ergebnissen, die gelöscht werden, weil der Analyzer, der sie generiert hat, gelöscht wurde, wird das Ereignis EventBridge etwa 24 Stunden nach dem Löschen des Analyzers gesendet. Bei Löschung eines Ergebnisses wird der Status des Ergebnisses nicht geändert. Stattdessen wird das isDeleted-Attribut auf „true“ festgelegt. IAM Access Analyzer sendet auch Ereignisse für neu erstellte Zugriffsvorschauen und Änderungen des Zugriffsvorschaustatus an. EventBridge

Beispiele für Ereignisse mit Ergebnissen für externen Zugriff

Im Folgenden finden Sie ein Beispiel für ein IAM Access Analyzer-Ereignis zur Suche nach einem externen Zugriff, an das gesendet wurde. EventBridge Die id Liste ist die ID für das Ereignis in EventBridge. Weitere Informationen finden Sie unter Ereignisse und Ereignismuster unter EventBridge.

Im detail-Objekt beziehen sich die Werte für die Attribute „accountId“ und „region“ auf das Konto und die Region, das bzw. die bei der Suche gemeldet wurden. Das isDeleted-Attribut gibt an, ob das Ereignis aus dem zu löschenden Ergebnis stammt. Die id ist die Such-ID. Das resources-Array ist ein Singleton mit dem ARN des Analyzers, der das Ergebnis erzeugt hat.

{ "account": "111122223333", "detail": { "accountId": "111122223333", "action": [ "s3:GetObject" ], "analyzedAt": "2019-11-21T01:22:22Z", "condition": {}, "createdAt": "2019-11-20T04:58:50Z", "id": "22222222-dcba-4444-dcba-333333333333", "isDeleted": false, "isPublic": false, "principal": { "AWS": "999988887777" }, "region": "us-west-2", "resource": "arn:aws:s3:::amzn-s3-demo-bucket", "resourceType": "AWS::S3::Bucket", "status": "ACTIVE", "updatedAt": "2019-11-21T01:14:07Z", "version": "1.0" }, "detail-type": "Access Analyzer Finding", "id": "11111111-2222-4444-aaaa-333333333333", "region": "us-west-2", "resources": [ "arn:aws:access-analyzer:us-west-2:111122223333:analyzer/MyAnalyzer" ], "source": "aws.access-analyzer", "time": "2019-11-21T01:22:33Z", "version": "0" }

IAM Access Analyzer sendet auch Ereignisse zur EventBridge Fehlersuche an. Ein Fehlerergebnis ist ein Ergebnis, das erzeugt wird, wenn IAM Access Analyzer die Ressource nicht analysieren kann. Ereignisse für Fehlerergebnisse umfassen ein error-Attribut, wie im folgenden Beispiel dargestellt.

{ "account": "111122223333", "detail": { "accountId": "111122223333", "analyzedAt": "2019-11-21T01:22:22Z", "createdAt": "2019-11-20T04:58:50Z", "error": "ACCESS_DENIED", "id": "22222222-dcba-4444-dcba-333333333333", "isDeleted": false, "region": "us-west-2", "resource": "arn:aws:s3:::amzn-s3-demo-bucket", "resourceType": "AWS::S3::Bucket", "status": "ACTIVE", "updatedAt": "2019-11-21T01:14:07Z", "version": "1.0" }, "detail-type": "Access Analyzer Finding", "id": "11111111-2222-4444-aaaa-333333333333", "region": "us-west-2", "resources": [ "arn:aws:access-analyzer:us-west-2:111122223333:analyzer/MyAnalyzer" ], "source": "aws.access-analyzer", "time": "2019-11-21T01:22:33Z", "version": "0" }

Beispiel für Ereignisse mit internen Zugriffsergebnissen

Im Folgenden finden Sie ein Beispiel für ein internes Zugriffsereignis von IAM Access Analyzer, an das EventBridge gesendet wurde. In der id Liste ist die ID für das Ereignis in EventBridge aufgeführt. Weitere Informationen finden Sie unter Ereignisse und Ereignismuster unter EventBridge.

Im detail Objekt beziehen sich die Werte für die principalOwnerAccount Attribute accountId und auf das Konto des Schulleiters, das im Ergebnis angegeben wurde. Das isDeleted-Attribut gibt an, ob das Ereignis aus dem zu löschenden Ergebnis stammt. Die id ist die Such-ID. Das resource ist der ARN des Analysators, der den Befund generiert hat.

{ "version": "0", "id": "b45c3678-c278-b593-6121-c155259ce1b5", "detail-type": "Internal Access Finding", "source": "aws.access-analyzer", "account": "111122223333", "time": "2025-04-08T19:42:49Z", "region": "us-east-1", "resources": [ "arn:aws:access-analyzer:us-east-1:111122223333:analyzer/testAnalyzer" ], "detail": { "accessType": "INTRA_ACCOUNT", "action": [ "s3:GetObject" ], "analyzedAt": "2025-04-08T03:18:43.509465073Z", "condition": {}, "createdAt": "2025-04-07T21:33:49.914099224Z", "id": "11111111-2222-4444-aaaa-333333333333", "isDeleted": false, "findingType": "InternalAccess", "principal": { "AWS": "arn:aws:iam::111122223333:role/MyRole_6" }, "principalOwnerAccount": "111122223333", "principalType": "IAM_ROLE", "resource": "arn:aws:s3:::critical-data", "resourceControlPolicyRestrictionType": "NOT_APPLICABLE", "accountId": "111122223333", "resourceType": "AWS::S3::Bucket", "serviceControlPolicyRestrictionType": "NOT_APPLICABLE", "status": "ACTIVE", "updatedAt": "2025-04-08T03:22:12.654688231Z", "version": "1.0" } }

IAM Access Analyzer sendet auch Ereignisse an, um Fehler EventBridge zu finden. Ein Fehlerergebnis ist ein Ergebnis, das erzeugt wird, wenn IAM Access Analyzer die Ressource nicht analysieren kann. Ereignisse für Fehlerergebnisse umfassen ein error-Attribut, wie im folgenden Beispiel dargestellt.

{ "version": "0", "id": "5a94b99b-e87d-a6a7-58c7-f47871532860", "detail-type": "Internal Access Finding", "source": "aws.access-analyzer-test", "account": "444455556666", "time": "2025-05-07T11:57:54Z", "region": "us-west-2", "resources": ["arn:aws:access-analyzer-beta:us-west-2:444455556666:analyzer/example-analyzer"], "detail": { "analyzedAt": "2025-03-24T19:58:52.512329448Z", "createdAt": "2025-03-22T03:30:46.920200692Z", "id": "ef573afd-12a5-4095-87a6-bf2f25109895", "isDeleted": false, "findingType": "InternalAccess", "resource": "arn:aws:s3:::test-entity-88", "accountId": "111122223333", "resourceControlPolicyRestrictionType": "NOT_APPLICABLE", "resourceType": "AWS::S3::Bucket", "serviceControlPolicyRestrictionType": "NOT_APPLICABLE", "error": "ACCESS_DENIED", // can be INTERNAL_ERROR and ACCESS_DENIED "status": "ACTIVE", "updatedAt": "2025-03-24T20:09:39.176075014Z", "version": "1.0" } }

Im Folgenden finden Sie ein Beispiel für ein IAM Access Analyzer-Ereignis zur Suche nach ungenutztem Zugriff, an das gesendet wurde. EventBridge Die id Liste ist die ID für das Ereignis in EventBridge. Weitere Informationen finden Sie unter Ereignisse und Ereignismuster unter EventBridge.

Im detail-Objekt beziehen sich die Werte für die Attribute „accountId“ und „region“ auf das Konto und die Region, das bzw. die bei der Suche gemeldet wurden. Das isDeleted-Attribut gibt an, ob das Ereignis aus dem zu löschenden Ergebnis stammt. Die id ist die Such-ID.

{ "version": "0", "id": "dc7ce3ee-114b-3243-e249-7f10f9054b21", "detail-type": "Unused Access Finding for IAM entities", "source": "aws.access-analyzer", "account": "123456789012", "time": "2023-09-29T17:31:40Z", "region": "us-west-2", "resources": [ "arn:aws:access-analyzer:us-west-2:123456789012:analyzer/integTestLongLivingAnalyzer-DO-NOT-DELETE" ], "detail": { "findingId": "b8ae0460-5d29-4922-b92a-ba956c986277", "resource": "arn:aws:iam::111122223333:role/FindingIntegTestFakeRole", "resourceType": "AWS::IAM::Role", "accountId": "111122223333", "createdAt": "2023-09-29T17:29:18.758Z", "updatedAt": "2023-09-29T17:29:18.758Z", "analyzedAt": "2023-09-29T17:29:18.758Z", "previousStatus": "", "status": "ACTIVE", "version": "62160bda-8e94-46d6-ac97-9670930d8ffb", "isDeleted": false, "findingType": "UnusedPermission", "numberOfUnusedServices": 0, "numberOfUnusedActions": 1 } }

IAM Access Analyzer sendet auch Ereignisse zur EventBridge Fehlersuche an. Ein Fehlerergebnis ist ein Ergebnis, das erzeugt wird, wenn IAM Access Analyzer die Ressource nicht analysieren kann. Ereignisse für Fehlerergebnisse umfassen ein error-Attribut, wie im folgenden Beispiel dargestellt.

{ "version": "0", "id": "c2e7aa1a-4df7-7652-f33e-64113b8997d4", "detail-type": "Unused Access Finding for IAM entities", "source": "aws.access-analyzer", "account": "111122223333", "time": "2023-10-31T20:26:12Z", "region": "us-west-2", "resources": [ "arn:aws:access-analyzer:us-west-2:111122223333:analyzer/ba811f91-de99-41a4-97c0-7481898b53f2" ], "detail": { "findingId": "b01a34f2-e118-46c9-aef8-0d8526b495c7", "resource": "arn:aws:iam::123456789012:role/TestRole", "resourceType": "AWS::IAM::Role", "accountId": "444455556666", "createdAt": "2023-10-31T20:26:08.647Z", "updatedAt": "2023-10-31T20:26:09.245Z", "analyzedAt": "2023-10-31T20:26:08.525Z", "previousStatus": "", "status": "ACTIVE", "version": "7c7a72a2-7963-4c59-ac71-f0be597010f7", "isDeleted": false, "findingType": "UnusedIAMRole", "error": "INTERNAL_ERROR" } }

Beispiel für Vorschau-Ereignisse

Das folgende Beispiel zeigt Daten für das erste Ereignis, an das gesendet wird, EventBridge wenn Sie eine Zugriffsvorschau erstellen. Das resources-Array ist ein Singleton mit der ARN des Analysators, mit dem die Zugriffsvorschau verknüpft ist. Im detail-Objekt bezieht sich id auf die ID der Zugriffsvorschau und configuredResources verweist auf die Ressource, für die die Zugriffsvorschau erstellt wurde. Die status ist Creating und bezieht sich auf den Status der Zugriffsvorschau. Die previousStatus ist nicht angegeben, da die Zugriffsvorschau gerade erstellt wurde.

{ "account": "111122223333", "detail": { "accessPreviewId": "aaaabbbb-cccc-dddd-eeee-ffffaaaabbbb", "configuredResources": [ "arn:aws:s3:::amzn-s3-demo-bucket" ], "createdAt": "2020-02-20T00:00:00.00Z", "region": "us-west-2", "status": "CREATING", "version": "1.0" }, "detail-type": "Access Preview State Change", "id": "aaaabbbb-2222-3333-4444-555566667777", "region": "us-west-2", "resources": [ "arn:aws:access-analyzer:us-west-2:111122223333:analyzer/MyAnalyzer" ], "source": "aws.access-analyzer", "time": "2020-02-20T00:00:00.00Z", "version": "0" }

Das folgende Beispiel zeigt Daten für ein Ereignis, an das EventBridge für eine Zugriffsvorschau mit einer Statusänderung von Creating zu gesendet wirdCompleted. Im Detailobjekt bezieht sich dieid auf die Zugriffs-Vorschau-ID. Die status und previousStatus beziehen sich auf den Status der Zugriffsvorschau, wobei der vorherige Status Creating und der aktuelle Status ist Completed.

{ "account": "111122223333", "detail": { "accessPreviewId": "aaaabbbb-cccc-dddd-eeee-ffffaaaabbbb", "configuredResources": [ "arn:aws:s3:::amzn-s3-demo-bucket" ], "createdAt": "2020-02-20T00:00:00.000Z", "previousStatus": "CREATING", "region": "us-west-2", "status": "COMPLETED", "version": "1.0" }, "detail-type": "Access Preview State Change", "id": "11112222-3333-4444-5555-666677778888", "region": "us-west-2", "resources": [ "arn:aws:access-analyzer:us-west-2:111122223333:analyzer/MyAnalyzer" ], "source": "aws.access-analyzer", "time": "2020-02-20T00:00:00.00Z", "version": "0" }

Das folgende Beispiel zeigt Daten für ein Ereignis, an das EventBridge für eine Zugriffsvorschau mit einer Statusänderung von Creating zu gesendet wirdFailed. Im detail-Objekt bezieht sich id auf die ID der Zugriffsvorschau. Die status und previousStatus beziehen sich auf den Status der Zugriffsvorschau, wobei der vorherige Status Creating und der aktuelle Status ist Failed. Das Feld statusReason enthält den Ursachencode, der angibt, dass die Zugriffsvorschau aufgrund einer ungültigen Ressourcenkonfiguration fehlgeschlagen ist.

{ "account": "111122223333", "detail": { "accessPreviewId": "aaaabbbb-cccc-dddd-eeee-ffffaaaabbbb", "configuredResources": [ "arn:aws:s3:::amzn-s3-demo-bucket" ], "createdAt": "2020-02-20T00:00:00.00Z", "previousStatus": "CREATING", "region": "us-west-2", "status": "FAILED", "statusReason": { "code": "INVALID_CONFIGURATION" }, "version": "1.0" }, "detail-type": "Access Preview State Change", "id": "99998888-7777-6666-5555-444433332222", "region": "us-west-2", "resources": [ "arn:aws:access-analyzer:us-west-2:111122223333:analyzer/MyAnalyzer" ], "source": "aws.access-analyzer", "time": "2020-02-20T00:00:00.00Z", "version": "0" }

Erstellen einer Ereignisregel mit der Konsole

Im folgenden Verfahren wird beschreiben, wie Sie mit der Konsole eine Ereignisregel erstellen.

  1. Öffnen Sie die EventBridge Amazon-Konsole unter https://console.aws.amazon.com/events/.

  2. Erstellen Sie mit den folgenden Werten eine EventBridge Regel, die Suchereignisse überwacht oder auf Vorschauereignisse zugreift:

    • Bei Regeltyp wählen Sie Regel mit einem Ereignismuster aus.

    • Wählen Sie für Event source (Ereignisquelle) Other (Andere) aus.

    • Wählen Sie für Event pattern (Ereignismuster) Custom patterns (JSON editor) (Benutzerdefinierte Muster (JSON-Editor)) aus und fügen Sie eines der folgenden Beispiels-Ereignismuster in das Textfeld ein:

      • Verwenden Sie das folgende Musterbeispiel, um eine Regel basierend auf einem IAM-Access-Analyzer-Ereignis zu erstellen:

        { "source": [ "aws.access-analyzer" ] }
      • Verwenden Sie das folgende Musterbeispiel, um eine Regel zu erstellen, die auf einem Ereignis mit externen Zugriffen, internen Zugriffen oder ungenutzten Zugriffsergebnissen basiert:

        { "source": [ "aws.access-analyzer" ], "detail-type": [ "Access Analyzer Finding", "Internal Access Finding", "Unused Access Finding for IAM entities" ] }
      • Verwenden Sie das folgende Musterbeispiel, um eine Regel zu erstellen, die nur auf einem Ereignis zur Erkenntnis für externen Zugriff basiert:

        { "source": [ "aws.access-analyzer" ], "detail-type": [ "Access Analyzer Finding" ] }
      • Verwenden Sie das folgende Musterbeispiel, um eine Regel zu erstellen, die nur auf einem Ereignis mit internen Zugriffsergebnissen basiert:

        { "source": [ "aws.access-analyzer" ], "detail-type": [ "Internal Access Finding" ] }
      • Verwenden Sie das folgende Musterbeispiel, um eine Regel zu erstellen, die nur auf einem Ereignis zu einem Erkenntnis für ungenutzten Zugriff basiert:

        { "source": [ "aws.access-analyzer" ], "detail-type": [ "Unused Access Finding for IAM entities" ] }
      • Verwenden Sie das folgende Musterbeispiel, um eine Regel basierend auf einem Zugriffsvorschau-Ereignis zu erstellen:

        { "source": [ "aws.access-analyzer" ], "detail-type": [ "Access Preview State Change" ] }
    • Wählen Sie für Zieltypen die Option AWS Service und für Ziel auswählen ein Ziel aus, z. B. ein Amazon SNS-Thema oder eine Amazon AWS Lambda SNS-Funktion. Das Ziel wird ausgelöst, wenn ein Ereignis empfangen wird, das dem in der Regel definierten Ereignismuster entspricht.

    Weitere Informationen zum Erstellen von Regeln finden Sie im EventBridge Amazon-Benutzerhandbuch unter Erstellen von EventBridge Amazon-Regeln, die auf Ereignisse reagieren.

Erstellen einer Ereignisregel mithilfe der CLI

  1. Gehen Sie wie folgt vor, um eine Regel für Amazon EventBridge mithilfe von zu erstellen AWS CLI. Ersetzen Sie den Regelnamen TestRule durch den Namen Ihrer Regel.

    aws events put-rule --name TestRule --event-pattern "{\"source\":[\"aws.access-analyzer\"]}"
  2. Sie können die Regel so anpassen, dass Zielaktionen nur für eine Teilmenge generierter Ergebnisse ausgelöst werden, z. B. Ergebnisse mit bestimmten Attributen. Im folgenden Beispiel wird veranschaulicht, wie eine Regel erstellt wird, die nur für Ergebnisse mit dem Status „Aktiv“ eine Zielaktion auslöst.

    aws events put-rule --name TestRule --event-pattern "{\"source\":[\"aws.access-analyzer\"],\"detail-type\":[\"Access Analyzer Finding\"],\"detail\":{\"status\":[\"ACTIVE\"]}}"

    Das folgende Beispiel zeigt, wie Sie eine Regel erstellen, die eine Zielaktion nur für Zugriffsvorschauen mit einem Status von Creating bis Completed auslöst.

    aws events put-rule --name TestRule --event-pattern "{\"source\":[\"aws.access-analyzer\"],\"detail-type\":[\"Access Preview State Change\"],\"detail\":{\"status\":[\"COMPLETED\"]}}"
  3. Verwenden Sie den folgenden Beispielbefehl, um eine Lambda-Funktion als Ziel für die von Ihnen erstellte Regel zu definieren. Ersetzen Sie die Region und den Funktionsnamen im ARN entsprechend Ihrer Umgebung.

    aws events put-targets --rule TestRule --targets Id=1,Arn=arn:aws:lambda:us-east-1:111122223333:function:MyFunction
  4. Fügen Sie die Berechtigungen hinzu, die zum Aufrufen des Regelziels erforderlich sind. Im folgenden Beispiel wird veranschaulicht, wie Berechtigungen für eine Lambda-Funktion erteilt werden, die den vorangegangenen Beispielen folgt.

    aws lambda add-permission --function-name MyFunction --statement-id 1 --action 'lambda:InvokeFunction' --principal events.amazonaws.com