Importieren Sie Trail-Ereignisse in einen Event-Datenspeicher mit dem AWS CLI - AWS CloudTrail

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.

Importieren Sie Trail-Ereignisse in einen Event-Datenspeicher mit dem AWS CLI

In diesem Abschnitt wird gezeigt, wie Sie einen Ereignisdatenspeicher erstellen und konfigurieren, indem Sie den create-event-data-storeBefehl ausführen, und dann, wie Sie die Ereignisse mithilfe des start-importBefehls in diesen Ereignisdatenspeicher importieren. Weitere Informationen zum Importieren von Trail-Ereignissen finden Sie unterKopieren von Trail-Ereignissen in einen Ereignisdatenspeicher.

Vorbereiten des Imports von Trail-Ereignissen

Treffen Sie die folgenden Vorbereitungen, bevor Sie Trail-Ereignisse importieren.

  • Stellen Sie sicher, dass Sie über eine Rolle mit den erforderlichen Berechtigungen zum Importieren von Trail-Ereignissen in einen Ereignisdatenspeicher verfügen.

  • Ermitteln Sie den --billing-mode-Wert, den Sie für den Ereignisdatenspeicher angeben möchten. Der --billing-mode bestimmt die Kosten für die Erfassung und Speicherung von Ereignissen sowie die standardmäßige und maximale Aufbewahrungsdauer für den Ereignisdatenspeicher.

    Wenn Sie Trail-Ereignisse nach CloudTrail Lake importieren, werden die im komprimierten CloudTrail GZIP-Format gespeicherten Protokolle entpackt. CloudTrail Kopiert dann die in den Protokollen enthaltenen Ereignisse in Ihren Ereignisdatenspeicher. Die Größe der unkomprimierten Daten könnte größer sein als die tatsächliche Amazon-S3-Speichergröße. Um eine allgemeine Schätzung der Größe der unkomprimierten Daten zu erhalten, multiplizieren Sie die Größe der Protokolle im S3-Bucket mit 10. Sie können diese Schätzung verwenden, um den --billing-mode-Wert für Ihren Anwendungsfall auszuwählen.

  • Ermitteln Sie den Wert, den Sie für den --retention-period angeben möchten. CloudTrail kopiert ein Ereignis nicht, wenn eventTime es älter als die angegebene Aufbewahrungsfrist ist.

    Um die geeignete Aufbewahrungsdauer zu ermitteln, nehmen Sie die Summe aus dem ältesten Ereignis, das Sie kopieren möchten, in Tagen und der Anzahl der Tage, an denen Sie die Ereignisse im Ereignisdatenspeicher aufbewahren möchten, wie in der folgenden Gleichung dargestellt:

    Aufbewahrungszeitraum = oldest-event-in-days + number-days-to-retain

    Wenn das älteste Ereignis, das Sie kopieren, beispielsweise 45 Tage alt ist und Sie die Ereignisse weitere 45 Tage im Ereignisdatenspeicher aufbewahren möchten, würden Sie die Aufbewahrungsdauer auf 90 Tage festlegen.

  • Entscheiden Sie, ob Sie den Ereignisdatenspeicher verwenden möchten, um zukünftige Ereignisse zu analysieren. Wenn Sie keine zukünftigen Ereignisse aufnehmen möchten, fügen Sie den Parameter --no-start-ingestion bei der Erstellung des Ereignisdatenspeichers hinzu. Standardmäßig beginnen Ereignisdatenspeicher mit der Erfassung von Ereignissen, wenn sie erstellt werden.

Erstellen eines Ereignisdatenspeichers und Importieren von Trail-Ereignissen in diesen Ereignisdatenspeicher

  1. Führen Sie den Befehl create-event-data-store aus, um den neuen Ereignisdatenspeicher zu erstellen. In diesem Beispiel ist --retention-period auf 120 gesetzt, weil das älteste kopierte Ereignis 90 Tage alt ist und wir die Ereignisse 30 Tage lang beibehalten möchten. Der Parameter --no-start-ingestion ist gesetzt, weil wir keine zukünftigen Ereignisse erfassen möchten. In diesem Beispiel wurde --billing-mode nicht gesetzt, da wir den Standardwert EXTENDABLE_RETENTION_PRICING verwenden, weil wir davon ausgehen, dass weniger als 25 TB an Ereignisdaten erfasst werden.

    Anmerkung

    Wenn Sie den Ereignisdatenspeicher erstellen, der Ihren Trail ersetzen soll, empfehlen wir, die --advanced-event-selectors so zu konfigurieren, dass sie den Ereignisselektoren Ihres Trails entsprechen, um sicherzustellen, dass Sie die gleiche Ereignisabdeckung haben. Standardmäßig protokollieren Ereignisdatenquellen alle Verwaltungsereignisse.

    aws cloudtrail create-event-data-store --name import-trail-eds --retention-period 120 --no-start-ingestion

    Nachfolgend finden Sie eine Beispielantwort:

    { "EventDataStoreArn": "arn:aws:cloudtrail:us-east-1:123456789012:eventdatastore/EXAMPLEa-4357-45cd-bce5-17ec652719d9", "Name": "import-trail-eds", "Status": "CREATED", "AdvancedEventSelectors": [ { "Name": "Default management events", "FieldSelectors": [ { "Field": "eventCategory", "Equals": [ "Management" ] } ] } ], "MultiRegionEnabled": true, "OrganizationEnabled": false, "BillingMode": "EXTENDABLE_RETENTION_PRICING", "RetentionPeriod": 120, "TerminationProtectionEnabled": true, "CreatedTimestamp": "2023-11-09T16:52:25.444000+00:00", "UpdatedTimestamp": "2023-11-09T16:52:25.569000+00:00" }

    Der Status ist zunächst CREATED, deshalb führen wir den Befahl get-event-data-store aus, um sicherzustellen, dass die Erfassung gestoppt ist.

    aws cloudtrail get-event-data-store --event-data-store eds-id

    Die Antwort zeigt, dass der Status jetzt STOPPED_INGESTION ist, was darauf hindeutet, dass der Ereignisdatenspeicher keine Live-Ereignisse erfasst.

    { "EventDataStoreArn": "arn:aws:cloudtrail:us-east-1:123456789012:eventdatastore/EXAMPLEa-4357-45cd-bce5-17ec652719d9", "Name": "import-trail-eds", "Status": "STOPPED_INGESTION", "AdvancedEventSelectors": [ { "Name": "Default management events", "FieldSelectors": [ { "Field": "eventCategory", "Equals": [ "Management" ] } ] } ], "MultiRegionEnabled": true, "OrganizationEnabled": false, "BillingMode": "EXTENDABLE_RETENTION_PRICING", "RetentionPeriod": 120, "TerminationProtectionEnabled": true, "CreatedTimestamp": "2023-11-09T16:52:25.444000+00:00", "UpdatedTimestamp": "2023-11-09T16:52:25.569000+00:00" }
  2. Führen Sie den Befehl start-import aus, um die Trail-Ereignisse in den Ereignisdatenspeicher zu importieren, der in Schritt 1 erstellt wurde. Geben Sie das ARN (oder das ID-Suffix desARN) des Ereignisdatenspeichers als Wert für den --destinations Parameter an. Für --start-event-time geben Sie die eventTime für das älteste Ereignis an, das Sie kopieren möchten, und für --end-event-time geben Sie die eventTime des neuesten Ereignisses an, das Sie kopieren möchten. --import-sourceGeben Sie den S3 URI für den S3-Bucket an, der Ihre Trail-Logs enthält, den AWS-Region für den S3-Bucket und die Rolle, die für den Import ARN von Trail-Ereignissen verwendet wird.

    aws cloudtrail start-import \ --destinations ["arn:aws:cloudtrail:us-east-1:123456789012:eventdatastore/EXAMPLEa-4357-45cd-bce5-17ec652719d9"] \ --start-event-time 2023-08-11T16:08:12.934000+00:00 \ --end-event-time 2023-11-09T17:08:20.705000+00:00 \ --import-source {"S3": {"S3LocationUri": "s3://aws-cloudtrail-logs-123456789012-612ff1f6/AWSLogs/123456789012/CloudTrail/","S3BucketRegion":"us-east-1","S3BucketAccessRoleArn": "arn:aws:iam::123456789012:role/service-role/CloudTrailLake-us-east-1-copy-events-eds"}}

    Nachfolgend finden Sie eine Beispielantwort.

    { "CreatedTimestamp": "2023-11-09T17:08:20.705000+00:00", "Destinations": [ "arn:aws:cloudtrail:us-east-1:123456789012:eventdatastore/EXAMPLEa-4357-45cd-bce5-17ec652719d9" ], "EndEventTime": "2023-11-09T17:08:20.705000+00:00", "ImportId": "EXAMPLEe-7be2-4658-9204-b38c3257fcd1", "ImportSource": { "S3": { "S3BucketAccessRoleArn": "arn:aws:iam::123456789012:role/service-role/CloudTrailLake-us-east-1-copy-events-eds", "S3BucketRegion":"us-east-1", "S3LocationUri": "s3://aws-cloudtrail-logs-123456789012-111ff1f6/AWSLogs/123456789012/CloudTrail/" } }, "ImportStatus": "INITIALIZING", "StartEventTime": "2023-08-11T16:08:12.934000+00:00", "UpdatedTimestamp": "2023-11-09T17:08:20.806000+00:00" }
  3. Führen Sie den Befehl get-import aus, um Informationen zum Import abzurufen.

    aws cloudtrail get-import --import-id import-id

    Nachfolgend finden Sie eine Beispielantwort.

    { "ImportId": "EXAMPLEe-7be2-4658-9204-b38c3EXAMPLE", "Destinations": [ "arn:aws:cloudtrail:us-east-1:123456789012:eventdatastore/EXAMPLEa-4357-45cd-bce5-17ec652719d9" ], "ImportSource": { "S3": { "S3LocationUri": "s3://aws-cloudtrail-logs-123456789012-111ff1f6/AWSLogs/123456789012/CloudTrail/", "S3BucketRegion":"us-east-1", "S3BucketAccessRoleArn": "arn:aws:iam::123456789012:role/service-role/CloudTrailLake-us-east-1-copy-events-eds" } }, "StartEventTime": "2023-08-11T16:08:12.934000+00:00", "EndEventTime": "2023-11-09T17:08:20.705000+00:00", "ImportStatus": "COMPLETED", "CreatedTimestamp": "2023-11-09T17:08:20.705000+00:00", "ImportStatistics": { "PrefixesFound": 1548, "PrefixesCompleted": 1548, "FilesCompleted": 92845, "EventsCompleted": 577249, "FailedEntries": 0 } }

    Ein Import endet mit einem ImportStatus COMPLETED, wenn es keine Fehler gab, oder FAILED, wenn es Fehler gab.

    Wenn beim Import ein FailedEntries aufgetreten ist, können Sie den Befehl list-import-failures ausführen, um eine Liste der Fehler zurückzugeben.

    aws cloudtrail list-import-failures --import-id import-id

    Um einen fehlgeschlagenen Import erneut zu versuchen, führen Sie den Befehl start-import nur mit dem Parameter --import-id aus. Wenn Sie einen Import erneut versuchen, CloudTrail wird der Import an der Stelle fortgesetzt, an der der Fehler aufgetreten ist.

    aws cloudtrail start-import --import-id import-id