CloudTrail Beispiele mit AWS CLI - AWS Command Line Interface

Diese Dokumentation bezieht sich AWS CLI nur auf Version 1 von. Dokumentation zu Version 2 von finden Sie im Benutzerhandbuch für Version 2. AWS CLI

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.

CloudTrail Beispiele mit AWS CLI

Die folgenden Codebeispiele zeigen Ihnen, wie Sie mithilfe von AWS Command Line Interface with Aktionen ausführen und allgemeine Szenarien implementieren CloudTrail.

Aktionen sind Codeauszüge aus größeren Programmen und müssen im Kontext ausgeführt werden. Während Aktionen Ihnen zeigen, wie Sie einzelne Servicefunktionen aufrufen, können Sie Aktionen im Kontext der zugehörigen Szenarien und serviceübergreifenden Beispiele sehen.

Szenarien sind Codebeispiele, die Ihnen zeigen, wie Sie eine bestimmte Aufgabe ausführen können, indem Sie mehrere Funktionen innerhalb desselben Services aufrufen.

Jedes Beispiel enthält einen Link zu GitHub, wo Sie Anweisungen zum Einrichten und Ausführen des Codes im Kontext finden.

Themen

Aktionen

Das folgende Codebeispiel zeigt, wie Sie es verwendenadd-tags.

AWS CLI

Um dem Trail Tags hinzuzufügen

Der folgende add-tags Befehl fügt Tags hinzu fürTrail1:

aws cloudtrail add-tags --resource-id arn:aws:cloudtrail:us-east-1:123456789012:trail/Trail1 --tags-list Key=name,Value=Alice Key=location,Value=us
  • Einzelheiten zur API finden Sie AddTagsin der AWS CLI Befehlsreferenz.

Das folgende Codebeispiel zeigt die Verwendungcreate-subscription.

AWS CLI

Um AWS Ressourcen für einen Trail zu erstellen und zu konfigurieren

Der folgende create-subscription Befehl erstellt einen neuen S3-Bucket und ein neues SNS-Thema fürTrail1:

aws cloudtrail create-subscription --name Trail1 --s3-new-bucket my-bucket --sns-new-topic my-topic

Ausgabe:

Setting up new S3 bucket my-bucket... Setting up new SNS topic my-topic... Creating/updating CloudTrail configuration... CloudTrail configuration: { "trailList": [ { "IncludeGlobalServiceEvents": true, "Name": "Trail1", "TrailARN": "arn:aws:cloudtrail:us-east-1:123456789012:trail/Trail1", "LogFileValidationEnabled": false, "IsMultiRegionTrail": false, "S3BucketName": "my-bucket", "SnsTopicName": "my-topic", "HomeRegion": "us-east-1" } ], "ResponseMetadata": { "HTTPStatusCode": 200, "RequestId": "f39e51f6-c615-11e5-85bd-d35ca21ee3e2" } } Starting CloudTrail service... Logs will be delivered to my-bucket

Das folgende Codebeispiel zeigt die Verwendungcreate-trail.

AWS CLI

Um einen Trail zu erstellen

Der folgende create-trail Befehl erstellt einen Trail mit mehreren Regionen mit dem Namen Trail1 und der Angabe eines S3-Buckets:

aws cloudtrail create-trail --name Trail1 --s3-bucket-name my-bucket --is-multi-region-trail

Ausgabe:

{ "IncludeGlobalServiceEvents": true, "Name": "Trail1", "TrailARN": "arn:aws:cloudtrail:us-west-2:123456789012:trail/Trail1", "LogFileValidationEnabled": false, "IsMultiRegionTrail": true, "S3BucketName": "my-bucket" }
  • Einzelheiten zur API finden Sie CreateTrailin der AWS CLI Befehlsreferenz.

Das folgende Codebeispiel zeigt die Verwendungdelete-trail.

AWS CLI

Um einen Trail zu löschen

Der folgende delete-trail Befehl löscht einen Trail mit dem NamenTrail1:

aws cloudtrail delete-trail --name Trail1
  • Einzelheiten zur API finden Sie DeleteTrailin der AWS CLI Befehlsreferenz.

Das folgende Codebeispiel zeigt die Verwendungdescribe-trails.

AWS CLI

Um einen Trail zu beschreiben

Der folgende describe-trails Befehl gibt die Einstellungen für Trail1 und zurückTrail2:

aws cloudtrail describe-trails --trail-name-list Trail1 Trail2

Ausgabe:

{ "trailList": [ { "IncludeGlobalServiceEvents": true, "Name": "Trail1", "TrailARN": "arn:aws:cloudtrail:us-east-1:123456789012:trail/Trail1", "LogFileValidationEnabled": false, "IsMultiRegionTrail": false, "S3BucketName": "my-bucket", "CloudWatchLogsRoleArn": "arn:aws:iam::123456789012:role/CloudTrail_CloudWatchLogs_Role", "CloudWatchLogsLogGroupArn": "arn:aws:logs:us-east-1:123456789012:log-group:CloudTrail:*", "SnsTopicName": "my-topic", "HomeRegion": "us-east-1" }, { "IncludeGlobalServiceEvents": true, "Name": "Trail2", "S3KeyPrefix": "my-prefix", "TrailARN": "arn:aws:cloudtrail:us-east-1:123456789012:trail/Trail2", "LogFileValidationEnabled": false, "IsMultiRegionTrail": false, "S3BucketName": "my-bucket", "KmsKeyId": "arn:aws:kms:us-east-1:123456789012:key/4c5ae5ac-3c13-421e-8335-c7868ef6a769", "HomeRegion": "us-east-1" } ] }
  • Einzelheiten zur API finden Sie DescribeTrailsin der AWS CLI Befehlsreferenz.

Das folgende Codebeispiel zeigt die Verwendungget-event-selectors.

AWS CLI

Um die Event-Selector-Einstellungen für einen Trail anzuzeigen

Der folgende get-event-selectors Befehl gibt die Einstellungen für Trail1 zurück:

aws cloudtrail get-event-selectors --trail-name Trail1

Ausgabe:

{ "EventSelectors": [ { "IncludeManagementEvents": true, "DataResources": [], "ReadWriteType": "All" } ], "TrailARN": "arn:aws:cloudtrail:us-east-1:123456789012:trail/Trail1" }

Das folgende Codebeispiel zeigt die Verwendungget-trail-status.

AWS CLI

Um den Status einer Spur abzurufen

Der folgende get-trail-status Befehl gibt die Liefer- und Protokollierungsdetails für zurückTrail1:

aws cloudtrail get-trail-status --name Trail1

Ausgabe:

{ "LatestNotificationTime": 1454022144.869, "LatestNotificationAttemptSucceeded": "2016-01-28T23:02:24Z", "LatestDeliveryAttemptTime": "2016-01-28T23:02:24Z", "LatestDeliveryTime": 1454022144.869, "TimeLoggingStarted": "2015-11-06T18:36:38Z", "LatestDeliveryAttemptSucceeded": "2016-01-28T23:02:24Z", "IsLogging": true, "LatestCloudWatchLogsDeliveryTime": 1454022144.918, "StartLoggingTime": 1446834998.695, "StopLoggingTime": 1446834996.933, "LatestNotificationAttemptTime": "2016-01-28T23:02:24Z", "TimeLoggingStopped": "2015-11-06T18:36:36Z" }
  • Einzelheiten zur API finden Sie GetTrailStatusin der AWS CLI Befehlsreferenz.

Das folgende Codebeispiel zeigt die Verwendunglist-public-keys.

AWS CLI

Um alle öffentlichen Schlüssel für einen Trail aufzulisten

Der folgende list-public-keys Befehl gibt alle öffentlichen Schlüssel zurück, deren private Schlüssel innerhalb des angegebenen Zeitraums zum Signieren der Digest-Dateien verwendet wurden:

aws cloudtrail list-public-keys --start-time 2016-01-01T20:30:00.000Z

Ausgabe:

{ "PublicKeyList": [ { "ValidityStartTime": 1453076702.0, "ValidityEndTime": 1455668702.0, "Value": "MIIBCgKCAQEAlSS3cl92HDycr/MTj0moOhas8habjrraXw+KzlWF0axSI2tcF+3iJ9BKQAVSKxGwxwu3m0wG3J+kUl1xboEcEPHYoIYMbgfSw7KGnuDKwkLzsQWhUJ0cIbOHASox1vv/5fNXkrHhGbDCHeVXm804c83nvHUEFYThr1PfyP/8HwrCtR3FX5OANtQCP61C1nJtSSkC8JSQUOrIP4CuwJjc+4WGDk+BGH5m9iuiAKkipEHWmUl8/P7XpfpWQuk4h8g3pXZOrNXr08lbh4d39svj7UqdhvOXoBISp9t/EXYuePGEtBdrKD9Dz+VHwyUPtBQvYr9BnkF88qBnaPNhS44rzwIDAQAB", "Fingerprint": "7f3f401420072e50a65a141430817ab3" } ] }
  • Einzelheiten zur API finden Sie ListPublicKeysin der AWS CLI Befehlsreferenz.

Das folgende Codebeispiel zeigt die Verwendunglist-tags.

AWS CLI

Um die Tags für einen Trail aufzulisten

Der folgende list-tags Befehl listet die Tags für Trail1 und aufTrail2:

aws cloudtrail list-tags --resource-id-list arn:aws:cloudtrail:us-east-1:123456789012:trail/Trail1 arn:aws:cloudtrail:us-east-1:123456789012:trail/Trail2

Ausgabe:

{ "ResourceTagList": [ { "ResourceId": "arn:aws:cloudtrail:us-east-1:123456789012:trail/Trail1", "TagsList": [ { "Value": "Alice", "Key": "name" }, { "Value": "us", "Key": "location" } ] }, { "ResourceId": "arn:aws:cloudtrail:us-east-1:123456789012:trail/Trail2", "TagsList": [ { "Value": "Bob", "Key": "name" } ] } ] }
  • Einzelheiten zur API finden Sie ListTagsin der AWS CLI Befehlsreferenz.

Das folgende Codebeispiel zeigt die Verwendunglookup-events.

AWS CLI

Um nach Ereignissen für einen Trail zu suchen

Der folgende lookup-events Befehl sucht API-Aktivitätsereignisse anhand des AttributsEventName:

aws cloudtrail lookup-events --lookup-attributes AttributeKey=EventName,AttributeValue=ConsoleLogin

Ausgabe:

{ "Events": [ { "EventId": "654ccbc0-ba0d-486a-9076-dbf7274677a7", "Username": "my-session-name", "EventTime": "2021-11-18T09:41:02-08:00", "CloudTrailEvent": "{\"eventVersion\":\"1.02\",\"userIdentity\":{\"type\":\"AssumedRole\",\"principalId\":\"AROAJIKPFTA72SWU4L7T4:my-session-name\",\"arn\":\"arn:aws:sts::123456789012:assumed-role/my-role/my-session-name\",\"accountId\":\"123456789012\",\"sessionContext\":{\"attributes\":{\"mfaAuthenticated\":\"false\",\"creationDate\":\"2016-01-26T21:42:12Z\"},\"sessionIssuer\":{\"type\":\"Role\",\"principalId\":\"AROAJIKPFTA72SWU4L7T4\",\"arn\":\"arn:aws:iam::123456789012:role/my-role\",\"accountId\":\"123456789012\",\"userName\":\"my-role\"}}},\"eventTime\":\"2016-01-26T21:42:12Z\",\"eventSource\":\"signin.amazonaws.com\",\"eventName\":\"ConsoleLogin\",\"awsRegion\":\"us-east-1\",\"sourceIPAddress\":\"72.21.198.70\",\"userAgent\":\"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/47.0.2526.111 Safari/537.36\",\"requestParameters\":null,\"responseElements\":{\"ConsoleLogin\":\"Success\"},\"additionalEventData\":{\"MobileVersion\":\"No\",\"MFAUsed\":\"No\"},\"eventID\":\"654ccbc0-ba0d-486a-9076-dbf7274677a7\",\"eventType\":\"AwsConsoleSignIn\",\"recipientAccountId\":\"123456789012\"}", "EventName": "ConsoleLogin", "Resources": [] } ] }
  • Einzelheiten zur API finden Sie LookupEventsin der AWS CLI Befehlsreferenz.

Das folgende Codebeispiel zeigt die Verwendungput-event-selectors.

AWS CLI

Um Event-Selektoren für einen Trail zu konfigurieren

Um einen Event-Selektor zu erstellen, führen Sie den Befehl "put-event-selectors" aus. Wenn in Ihrem Konto ein Ereignis eintritt, wird die Konfiguration für Ihre Trails CloudTrail ausgewertet. Entspricht das Ereignis einer für den Trail festgelegten Ereignisauswahl, verarbeitet und protokolliert der Trail das Ereignis. Sie können bis zu 5 Ereignisauswahlen und bis zu 250 Datenressourcen für einen Trail konfigurieren.

Das folgende Beispiel erstellt einen Event-Selector für einen Trail mit dem Namen "TrailName", der Verwaltungsereignisse mit Schreibschutz und Schreibschutz, Datenereignisse für zwei Amazon S3 S3-Bucket/Präfix-Kombinationen und Datenereignisse für eine einzelne Lambda-Funktion namens "" umfasst: AWS hello-world-python-function

aws cloudtrail put-event-selectors --trail-name TrailName --event-selectors '[{"ReadWriteType": "All","IncludeManagementEvents": true,"DataResources": [{"Type":"AWS::S3::Object", "Values": ["arn:aws:s3:::mybucket/prefix","arn:aws:s3:::mybucket2/prefix2"]},{"Type": "AWS::Lambda::Function","Values": ["arn:aws:lambda:us-west-2:999999999999:function:hello-world-python-function"]}]}]'

Ausgabe:

{ "EventSelectors": [ { "IncludeManagementEvents": true, "DataResources": [ { "Values": [ "arn:aws:s3:::mybucket/prefix", "arn:aws:s3:::mybucket2/prefix2" ], "Type": "AWS::S3::Object" }, { "Values": [ "arn:aws:lambda:us-west-2:123456789012:function:hello-world-python-function" ], "Type": "AWS::Lambda::Function" }, ], "ReadWriteType": "All" } ], "TrailARN": "arn:aws:cloudtrail:us-east-2:123456789012:trail/TrailName" }

Das folgende Beispiel erstellt einen Event-Selector für einen Trail mit dem Namen "TrailName2", der alle Ereignisse, einschließlich Verwaltungsereignisse mit Schreibschutz und Schreibschutz, sowie alle Datenereignisse für alle Amazon S3 S3-Buckets und AWS Lambda-Funktionen im Konto umfasst: AWS

aws cloudtrail put-event-selectors --trail-name TrailName2 --event-selectors '[{"ReadWriteType": "All","IncludeManagementEvents": true,"DataResources": [{"Type":"AWS::S3::Object", "Values": ["arn:aws:s3:::"]},{"Type": "AWS::Lambda::Function","Values": ["arn:aws:lambda"]}]}]'

Ausgabe:

{ "EventSelectors": [ { "IncludeManagementEvents": true, "DataResources": [ { "Values": [ "arn:aws:s3:::" ], "Type": "AWS::S3::Object" }, { "Values": [ "arn:aws:lambda" ], "Type": "AWS::Lambda::Function" }, ], "ReadWriteType": "All" } ], "TrailARN": "arn:aws:cloudtrail:us-east-2:123456789012:trail/TrailName2" }

Das folgende Codebeispiel zeigt die Verwendungremove-tags.

AWS CLI

Um Tags für einen Trail zu entfernen

Der folgende remove-tags Befehl entfernt die angegebenen Tags fürTrail1:

aws cloudtrail remove-tags --resource-id arn:aws:cloudtrail:us-east-1:123456789012:trail/Trail1 --tags-list Key=name Key=location
  • Einzelheiten zur API finden Sie RemoveTagsin der AWS CLI Befehlsreferenz.

Das folgende Codebeispiel zeigt die Verwendungstart-logging.

AWS CLI

Um mit der Protokollierung für einen Trail zu beginnen

Der folgende start-logging Befehl aktiviert die Protokollierung fürTrail1:

aws cloudtrail start-logging --name Trail1
  • Einzelheiten zur API finden Sie StartLoggingin der AWS CLI Befehlsreferenz.

Das folgende Codebeispiel zeigt die Verwendungstop-logging.

AWS CLI

Um die Protokollierung einer Spur zu beenden

Der folgende stop-logging Befehl deaktiviert die Protokollierung fürTrail1:

aws cloudtrail stop-logging --name Trail1
  • Einzelheiten zur API finden Sie StopLoggingin der AWS CLI Befehlsreferenz.

Das folgende Codebeispiel zeigt die Verwendungupdate-subscription.

AWS CLI

Um die Konfigurationseinstellungen für einen Trail zu aktualisieren

Mit dem folgenden update-subscription Befehl wird der Trail aktualisiert, sodass ein neuer S3-Bucket und ein neues SNS-Thema angegeben werden:

aws cloudtrail update-subscription --name Trail1 --s3-new-bucket my-bucket-new --sns-new-topic my-topic-new

Ausgabe:

Setting up new S3 bucket my-bucket-new... Setting up new SNS topic my-topic-new... Creating/updating CloudTrail configuration... CloudTrail configuration: { "trailList": [ { "IncludeGlobalServiceEvents": true, "Name": "Trail1", "TrailARN": "arn:aws:cloudtrail:us-east-1:123456789012:trail/Trail1", "LogFileValidationEnabled": false, "IsMultiRegionTrail": false, "S3BucketName": "my-bucket-new", "SnsTopicName": "my-topic-new", "HomeRegion": "us-east-1" } ], "ResponseMetadata": { "HTTPStatusCode": 200, "RequestId": "31126f8a-c616-11e5-9cc6-2fd637936879" } }

Das folgende Codebeispiel zeigt die Verwendungupdate-trail.

AWS CLI

Um einen Trail zu aktualisieren

Mit dem folgenden update-trail Befehl wird ein Trail aktualisiert, sodass er einen vorhandenen Bucket für die Protokollzustellung verwendet:

aws cloudtrail update-trail --name Trail1 --s3-bucket-name my-bucket

Ausgabe:

{ "IncludeGlobalServiceEvents": true, "Name": "Trail1", "TrailARN": "arn:aws:cloudtrail:us-west-2:123456789012:trail/Trail1", "LogFileValidationEnabled": false, "IsMultiRegionTrail": true, "S3BucketName": "my-bucket" }
  • Einzelheiten zur API finden Sie UpdateTrailin der AWS CLI Befehlsreferenz.

Das folgende Codebeispiel zeigt die Verwendungvalidate-logs.

AWS CLI

Um eine Protokolldatei zu validieren

Der folgende validate-logs Befehl validiert die Protokolle fürTrail1:

aws cloudtrail validate-logs --trail-arn arn:aws:cloudtrail:us-east-1:123456789012:trail/Trail1 --start-time 20160129T19:00:00Z

Ausgabe:

Validating log files for trail arn:aws:cloudtrail:us-east-1:123456789012:trail/Trail1 between 2016-01-29T19:00:00Z and 2016-01-29T22:15:43Z Results requested for 2016-01-29T19:00:00Z to 2016-01-29T22:15:43Z Results found for 2016-01-29T19:24:57Z to 2016-01-29T21:24:57Z: 3/3 digest files valid 15/15 log files valid
  • Einzelheiten zur API finden Sie ValidateLogsin der AWS CLI Befehlsreferenz.