

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.

# Filtern von Datenereignissen mithilfe erweiterter Event-Selektoren
<a name="filtering-data-events"></a>

In diesem Abschnitt wird beschrieben, wie Sie mithilfe erweiterter Event-Selektoren detaillierte Selektoren für die Protokollierung von Datenereignissen erstellen können. So können Sie die Kosten kontrollieren, indem Sie nur die spezifischen Datenereignisse protokollieren, die für Sie von Interesse sind.

Beispiel:
+ Sie können bestimmte API-Aufrufe ein- oder ausschließen, indem Sie dem Feld einen Filter hinzufügen. `eventName`
+ Sie können die Protokollierung für bestimmte Ressourcen ein- oder ausschließen, indem Sie dem `resources.ARN` Feld einen Filter hinzufügen. Wenn Sie beispielsweise S3-Datenereignisse protokollieren, könnten Sie die Protokollierung für den S3-Bucket für Ihren Trail ausschließen.
+ Sie können wählen, ob nur schreibgeschützte Ereignisse oder schreibgeschützte Ereignisse protokolliert werden sollen, indem Sie dem Feld einen Filter hinzufügen. `readOnly`

In der folgenden Tabelle werden die unterstützten Felder zum Filtern von Datenereignissen beschrieben. Eine Liste der unterstützten Felder für jeden CloudTrail Ereignistyp finden Sie [ AdvancedEventSelector ](https://docs.aws.amazon.com/awscloudtrail/latest/APIReference/API_AdvancedEventSelector.html) in der *AWS CloudTrail API-Referenz*.


| Feld | Erforderlich | Gültige Operatoren | Description | 
| --- | --- | --- | --- | 
| **`eventCategory` ** | Ja | `Equals` | Dieses Feld ist auf `Data` zum Protokollieren von Datenereignissen festgelegt. | 
| **`resources.type`** | Ja | `Equals` | Dieses Feld wird verwendet, um den Ressourcentyp auszuwählen, für den Sie Datenereignisse protokollieren möchten. Die [ Tabelle mit ](logging-data-events-with-cloudtrail.md#logging-data-events) Datenereignissen zeigt die möglichen Werte. | 
| **`readOnly`** | Nein | `Equals` | Dies ist ein optionales Feld, das verwendet wird, um Datenereignisse basierend auf dem `readOnly` Wert ein- oder auszuschließen. Ein Wert, der nur Leseereignisse `true` protokolliert. Ein Wert von `false` Logs schreibt nur Ereignisse. Wenn Sie dieses Feld nicht hinzufügen, werden sowohl Lese- als auch Schreibereignisse CloudTrail protokolliert.  | 
| **`eventName`** | Nein | `EndsWith`<br />`Equals`<br />`NotEndsWith`<br />`NotEquals`<br />`NotStartsWith`<br />`StartsWith` | Dies ist ein optionales Feld, das verwendet wird, um jedes Datenereignis, bei dem protokolliert wurde, ein- oder herauszufiltern CloudTrail, wie `PutBucket` z. B. oder. `GetSnapshotBlock`<br />Wenn Sie den verwenden AWS CLI, können Sie mehrere Werte angeben, indem Sie jeden Wert durch ein Komma trennen.<br />Wenn Sie die Konsole verwenden, können Sie mehrere Werte angeben, indem Sie für jeden, nach dem `eventName` Sie filtern möchten, eine Bedingung erstellen. | 
| **`resources.ARN`** | Nein | `EndsWith`<br />`Equals`<br />`NotEndsWith`<br />`NotEquals`<br />`NotStartsWith`<br />`StartsWith` | Dies ist ein optionales Feld, das verwendet wird, um Datenereignisse für eine bestimmte Ressource auszuschließen oder einzuschließen, indem das angegeben wird`resources.ARN`. Sie können jeden Operator mit verwenden`resources.ARN`, aber wenn Sie `Equals` oder verwenden`NotEquals`, muss der Wert exakt dem ARN einer gültigen Ressource für die von `resources.type` Ihnen angegebene Ressource entsprechen. Um alle Datenereignisse für alle Objekte in einem bestimmten S3-Bucket zu protokollieren, verwenden Sie den `StartsWith`-Operator und geben nur den Bucket-ARN als übereinstimmenden Wert an.<br />Wenn Sie den verwenden AWS CLI, können Sie mehrere Werte angeben, indem Sie jeden Wert durch ein Komma trennen.<br />Wenn Sie die Konsole verwenden, können Sie mehrere Werte angeben, indem Sie für jeden, nach dem `resources.ARN` Sie filtern möchten, eine Bedingung erstellen. | 
| **`eventSource`** | Nein | `EndsWith`<br />`Equals`<br />`NotEndsWith`<br />`NotEquals`<br />`NotStartsWith`<br />`StartsWith` | Sie können es verwenden, um bestimmte Ereignisquellen ein- oder auszuschließen. Das `eventSource` ist in der Regel eine Kurzform des Dienstnamens ohne Leerzeichen plus`.amazonaws.com`. Sie könnten beispielsweise festlegen `eventSource``Equals`, dass nur Amazon EC2-Datenereignisse protokolliert werden. `ec2.amazonaws.com` | 
| **`eventType`** | Nein | `EndsWith`<br />`Equals`<br />`NotEndsWith`<br />`NotEquals`<br />`NotStartsWith`<br />`StartsWith` | Der [ EventType, der ein- oder ](cloudtrail-event-reference-record-contents.md#ct-event-type) ausgeschlossen werden soll. Sie können dieses Feld beispielsweise so einstellen, dass `NotEquals` `AwsServiceEvent` [AWS-Service Ereignisse ](non-api-aws-service-events.md) ausgeschlossen werden. | 
| **`sessionCredentialFromConsole`** | Nein | `Equals`<br />`NotEquals` | Schließen Sie Ereignisse ein, die aus einer AWS-Managementkonsole Sitzung stammen, oder schließen Sie sie aus. Dieses Feld kann auf `Equals` oder `NotEquals` mit einem Wert von gesetzt werden`true`. | 
| **`userIdentity.arn`** | Nein | `EndsWith`<br />`Equals`<br />`NotEndsWith`<br />`NotEquals`<br />`NotStartsWith`<br />`StartsWith` | Schließen Sie Ereignisse für Aktionen ein oder aus, die von bestimmten IAM-Identitäten ausgeführt wurden. Weitere Informationen finden Sie unter [CloudTrail -Element userIdentity](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-event-reference-user-identity.html). | 

Um Datenereignisse mithilfe der CloudTrail Konsole zu protokollieren, wählen Sie die ** Option ** Datenereignisse und dann den gewünschten ** Ressourcentyp ** aus, wenn Sie einen Trail- oder Event-Datenspeicher erstellen oder aktualisieren. Die [ Tabelle mit ](logging-data-events-with-cloudtrail.md#logging-data-events) Datenereignissen zeigt die möglichen Ressourcentypen, die Sie auf der CloudTrail Konsole auswählen können.

![Auswahl des Ressourcentyps für das SNS-Thema auf der Konsole.](https://docs.aws.amazon.com/de_de/awscloudtrail/latest/userguide/images/cloudtrail-data-event-type.png)


Um Datenereignisse mit dem zu protokollieren AWS CLI, konfigurieren Sie den `--advanced-event-selector` Parameter so, dass er dem `eventCategory` `resources.type` Ressourcentypwert, für den Sie Datenereignisse protokollieren möchten, entspricht `Data` und der Wert diesem entspricht. In der [ Tabelle mit ](logging-data-events-with-cloudtrail.md#logging-data-events) Datenereignissen sind die verfügbaren Ressourcentypen aufgeführt.

Wenn Sie beispielsweise Datenereignisse für alle Cognito-Identitätspools protokollieren möchten, würden Sie den `--advanced-event-selectors` Parameter so konfigurieren, dass er wie folgt aussieht:

```
--advanced-event-selectors '[
    {
       "Name": "Log Cognito data events on Identity pools",
       "FieldSelectors": [
         { "Field": "eventCategory", "Equals": ["Data"] },
         { "Field": "resources.type", "Equals": ["AWS::Cognito::IdentityPool"] }
       ]
     }
]'
```

Im vorherigen Beispiel werden alle Cognito-Datenereignisse in Identitätspools protokolliert. Sie können die erweiterten Event-Selektoren weiter verfeinern, um nach den `resources.ARN` Feldern `eventName``readOnly`, und zu filtern, um bestimmte interessante Ereignisse zu protokollieren oder Ereignisse auszuschließen, die nicht von Interesse sind.

Sie können erweiterte Event-Selektoren so konfigurieren, dass Datenereignisse anhand mehrerer Felder gefiltert werden. Sie können beispielsweise erweiterte Event-Selektoren so konfigurieren, dass alle Amazon S3 `PutObject` - und `DeleteObject` API-Aufrufe protokolliert werden, aber die Ereignisprotokollierung für einen bestimmten S3-Bucket ausgeschlossen wird, wie im folgenden Beispiel gezeigt. Ersetzen Sie {{amzn-s3-demo-bucket}} durch den Namen von Ihrem Bucket.

```
--advanced-event-selectors
'[
  {
    "Name": "Log PutObject and DeleteObject events for all but one bucket",
    "FieldSelectors": [
      { "Field": "eventCategory", "Equals": ["Data"] },
      { "Field": "resources.type", "Equals": ["AWS::S3::Object"] },
      { "Field": "eventName", "Equals": ["PutObject","DeleteObject"] },
      { "Field": "resources.ARN", "NotStartsWith": ["arn:aws:s3:::{{amzn-s3-demo-bucket}}/"] }
    ]
  }
]'
```

Sie können auch mehrere Bedingungen für ein Feld angeben. Informationen zur Auswertung mehrerer Bedingungen finden Sie unter[Wie CloudTrail wertet mehrere Bedingungen für ein Feld aus](#filtering-data-events-conditions).

Sie können erweiterte Event-Selektoren verwenden, um sowohl Verwaltungs- als auch Datenereignisse zu protokollieren. Um Datenereignisse für mehrere Ressourcentypen zu protokollieren, fügen Sie für jeden Ressourcentyp, für den Sie Datenereignisse protokollieren möchten, eine Feldauswahl-Anweisung hinzu.

**Anmerkung**  
Trails können entweder grundlegende Event-Selektoren oder erweiterte Event-Selektoren verwenden, aber nicht beide. Wenn Sie erweiterte Ereignisselektoren auf einen Trail anwenden, werden alle vorhandenen grundlegenden Ereignisselektoren überschrieben.  
Selektoren unterstützen nicht die Verwendung von Platzhaltern wie. `*` Um mehrere Werte mit einer einzigen Bedingung abzugleichen, können Sie`StartsWith`,, oder verwenden `EndsWith``NotStartsWith`, `NotEndsWith` um explizit den Anfang oder das Ende des Ereignisfeldes abzugleichen.

**Topics**
+ [Wie CloudTrail wertet mehrere Bedingungen für ein Feld aus](#filtering-data-events-conditions)
+ [AWS CLI Beispiele für das Filtern von Datenereignissen](#filtering-data-events-examples)

## Wie CloudTrail wertet mehrere Bedingungen für ein Feld aus
<a name="filtering-data-events-conditions"></a>

 CloudTrail Wertet bei fortgeschrittenen Event-Selektoren mehrere Bedingungen für ein Feld wie folgt aus:
+ Bei Operatoren vom Typ DESELECT wird ein UND verknüpft. Wenn eine der Bedingungen des DESELECT-Operators erfüllt ist, wird das Ereignis nicht ausgelöst. Dies sind die gültigen DESELECT-Operatoren für erweiterte Event-Selektoren:
  + `NotEndsWith`
  + `NotEquals`
  + `NotStartsWith`
+ SELECT-Operatoren werden zusammen ODER. Dies sind die gültigen SELECT-Operatoren für erweiterte Event-Selektoren:
  + `EndsWith`
  + `Equals`
  + `StartsWith`
+ Kombinationen von SELECT- und DESELECT-Operatoren folgen den obigen Regeln, und beide Gruppen werden mit UND verknüpft.

### Beispiel, das mehrere Bedingungen für das Feld `` Resources.arn zeigt
<a name="filtering-data-events-conditions-ex"></a>

Das folgende Beispiel für eine Event-Selector-Anweisung sammelt Datenereignisse für den `AWS::S3::Object` Ressourcentyp und wendet mehrere Bedingungen auf das Feld an. `resources.ARN`

```
{
    "Name": "S3Select",
    "FieldSelectors": [
      {
        "Field": "eventCategory",
        "Equals": [
          "Data"
        ]
      },
      {
        "Field": "resources.type",
        "Equals": [
          "AWS::S3::Object"
        ]
      },
      {
        "Field": "resources.ARN",
        "Equals": [
          "arn:aws:s3:::amzn-s3-demo-bucket/object1"
        ],
        "StartsWith": [
          "arn:aws:s3:::amzn-s3-demo-bucket/"
        ],
        "EndsWith": [
          "object3"
        ],
        "NotStartsWith": [
          "arn:aws:s3:::amzn-s3-demo-bucket/deselect"
        ],
        "NotEndsWith": [
          "object5"
        ],
        "NotEquals": [
          "arn:aws:s3:::amzn-s3-demo-bucket/object6"
        ]
      }
    ]
  }
```

Im vorherigen Beispiel werden Amazon S3-Datenereignisse für die `AWS::S3::Object` Ressource übermittelt, wenn: 

1. Keine dieser Bedingungen für den DESELECT-Operator ist erfüllt:
   + das `resources.ARN` Feld, `NotStartsWith` der Wert `arn:aws:s3:::amzn-s3-demo-bucket/deselect`
   + das `resources.ARN` Feld `NotEndsWith` der Wert `object5`
   + das `resources.ARN` Feld `NotEquals` der Wert `arn:aws:s3:::amzn-s3-demo-bucket/object6`

1. Mindestens eine dieser SELECT-Operatorbedingungen ist erfüllt: 
   + das `resources.ARN` Feld, `Equals` der Wert `arn:aws:s3:::amzn-s3-demo-bucket/object1`
   + das `resources.ARN` Feld `StartsWith` der Wert `arn:aws:s3:::amzn-s3-demo-bucket/`
   + das `resources.ARN` Feld `EndsWith` der Wert `object3`

Basierend auf der Bewertungslogik:

1. Datenereignisse für `amzn-s3-demo-bucket/object1` werden übermittelt, da sie dem Wert für den `Equals` Operator und keinem der Werte für die `NotEquals` Operatoren `NotStartsWith``NotEndsWith`, und entsprechen.

1. Das Datenereignis für `amzn-s3-demo-bucket/object2` wird übermittelt, da es dem Wert für den `StartsWith` Operator und keinem der Werte für die `NotEquals` Operatoren `NotStartsWith``NotEndsWith`, und entspricht.

1. Das `amzn-s3-demo-bucket1/object3` Datenereignis für wird übermittelt, da es dem `EndsWith` Operator und keinem der Werte für die `NotEquals` Operatoren `NotStartsWith``NotEndsWith`, und entspricht.

1. Datenereignisse für `arn:aws:s3:::amzn-s3-demo-bucket/deselectObject4` werden nicht übermittelt, da sie der Bedingung für den entsprechen, `NotStartsWith` obwohl sie der Bedingung für den `StartsWith` Operator entsprechen.

1. Datenereignisse für `arn:aws:s3:::amzn-s3-demo-bucket/object5` werden nicht übermittelt, da sie die Bedingung für den erfüllen, `NotEndsWith` obwohl sie die Bedingung für den `StartsWith` Operator erfüllen.

1. Datenereignisse für den `arn:aws:s3:::amzn-s3-demo-bucket/object6` werden nicht übermittelt, da sie die Bedingung für den `NotEquals` Operator erfüllen, obwohl sie die Bedingung für den `StartsWith` Operator erfüllen.

## AWS CLI Beispiele für das Filtern von Datenereignissen
<a name="filtering-data-events-examples"></a>

Dieser Abschnitt enthält AWS CLI Beispiele, die zeigen, wie Datenereignisse nach verschiedenen Feldern gefiltert werden. Weitere AWS CLI Beispiele finden Sie unter [Protokollieren Sie Datenereignisse für Trails mithilfe erweiterter Event-Selektoren](logging-data-events-with-cloudtrail.md#creating-data-event-selectors-advanced) und[Protokollieren von Datenereignissen für Event-Datenspeicher mit dem AWS CLI](logging-data-events-with-cloudtrail.md#logging-data-events-CLI-eds-examples).

Hinweise zum Protokollieren von Datenereignissen mithilfe der Konsole finden Sie unter[Protokollieren von Datenereignissen mit dem AWS-Managementkonsole](logging-data-events-with-cloudtrail.md#logging-data-events-console).

**Topics**
+ [Beispiel 1: Filtern nach dem `EventName-Feld`](#filtering-data-events-eventname)
+ [Beispiel 2: Filtern nach den Feldern `Resources.arn` und user `Identity.arn`](#filtering-data-events-useridentityarn)
+ [Beispiel 3: Filtern der `Felder resources.type und` eventName, um einzelne Objekte auszuschließen, die durch ein Amazon S3-Ereignis gelöscht wurden DeleteObjects](#filtering-data-events-deleteobjects)

### Beispiel 1: Filtern nach dem `EventName-Feld`
<a name="filtering-data-events-eventname"></a>

Im ersten Beispiel sind die `--advanced-event-selectors` für einen Trail so konfiguriert, dass nur die `GetObject``PutObject`, und `DeleteObject` API-Aufrufe für Amazon S3-Objekte in allgemeinen Buckets protokolliert werden.

```
aws cloudtrail put-event-selectors \
--trail-name {{trailName}} \
--advanced-event-selectors '[
  {
    "Name": "Log GetObject, PutObject and DeleteObject S3 data events",
    "FieldSelectors": [
      { "Field": "eventCategory", "Equals": ["Data"] },
      { "Field": "resources.type", "Equals": ["AWS::S3::Object"] },
      { "Field": "eventName", "Equals": ["GetObject","PutObject","DeleteObject"] }
    ]
  }
]'
```

Im nächsten Beispiel wird ein neuer Event-Datenspeicher erstellt, der Datenereignisse für EBS Direct-APIs protokolliert, API-Aufrufe jedoch ausschließt`ListChangedBlocks`. Sie können den [update-event-data-store](https://docs.aws.amazon.com/cli/latest/reference/cloudtrail/update-event-data-store.html) Befehl verwenden, um einen vorhandenen Event-Datenspeicher zu aktualisieren.

```
aws cloudtrail create-event-data-store \
--name "{{eventDataStoreName}}"
--advanced-event-selectors '[
    {
        "Name": "Log all EBS Direct API data events except ListChangedBlocks",
        "FieldSelectors": [
            { "Field": "eventCategory", "Equals": ["Data"] },
            { "Field": "resources.type", "Equals": ["AWS::EC2::Snapshot"] },
            { "Field": "eventName", "NotEquals": ["ListChangedBlocks"] }
         ]
    }
]'
```

### Beispiel 2: Filtern nach den Feldern `Resources.arn` und user `Identity.arn`
<a name="filtering-data-events-useridentityarn"></a>

Das folgende Beispiel zeigt, wie Sie alle Datenereignisse für alle Amazon S3-Objekte in einen bestimmten S3-Bucket für allgemeine Zwecke aufnehmen, aber Ereignisse ausschließen, die von der generiert wurden. `bucket-scanner-role` `userIdentity` Der Wert für S3-Ereignisse für das `resources.type`-Feld ist `AWS::S3::Object`. Da sich die ARN-Werte für S3-Objekte und S3-Buckets geringfügig unterscheiden, müssen Sie den `StartsWith` Operator für `resources.ARN` hinzufügen.

```
aws cloudtrail put-event-selectors \
--trail-name {{trailName}} \
--advanced-event-selectors \
'[
    {
        "Name": "S3EventSelector",
        "FieldSelectors": [
            { "Field": "eventCategory", "Equals": ["Data"] },
            { "Field": "resources.type", "Equals": ["AWS::S3::Object"] },
            { "Field": "resources.ARN", "StartsWith": ["arn:{{partition}}:s3:::{{amzn-s3-demo-bucket}}/"] },
            { "Field": "userIdentity.arn", "NotStartsWith": ["arn:aws:sts::123456789012:assumed-role/bucket-scanner-role"]}
        ]
    }
]'
```

### Beispiel 3: Filtern der `Felder resources.type und` eventName, um einzelne Objekte auszuschließen, die durch ein Amazon S3-Ereignis gelöscht wurden DeleteObjects
<a name="filtering-data-events-deleteobjects"></a>

Das folgende Beispiel zeigt, wie alle Datenereignisse für alle Amazon S3-Objekte in einen bestimmten Amazon S3-Bucket für allgemeine Zwecke aufgenommen werden, aber die einzelnen Objekte, die durch den Vorgang gelöscht wurden, ausgeschlossen werden. `DeleteObject` Der Wert für S3-Ereignisse für das `resources.type`-Feld ist `AWS::S3::Object`. Der Wert für den Namen des Ereignisses ist`DeleteObject`. 

```
aws cloudtrail put-event-selectors \
--trail-name {{trailName}} \
--advanced-event-selectors \

{
    "Name": "Exclude Events for DeleteObject operation",
    "FieldSelectors": [
      {
        "Field": "eventCategory",
        "Equals": [
          "Data"
        ]
      },
      {
        "Field": "resources.type",
        "Equals": [
          "AWS::S3::Object"
        ]
      },
      {
        "Field": "eventName",
        "NotEquals": [
          "DeleteObject"
        ]
      }
    ]
  },
  {
    "Name": "Exclude DeleteObject Events for individual objects deleted by DeleteObjects Operation",
    "FieldSelectors": [
      {
        "Field": "eventCategory",
        "Equals": [
          "Data"
        ]
      },
      {
        "Field": "resources.type",
        "Equals": [
          "AWS::S3::Object"
        ]
      },
      {
        "Field": "eventName",
        "Equals": [
          "DeleteObject"
        ]
      },
      {
        "Field": "eventType",
        "NotEquals": [
          "AwsServiceEvent"
        ]
      }
    ]
  }
] (edited)
```