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.
Überprüfen der Integrität der CloudTrail Protokolldatei mit dem AWS CLI
Verwenden Sie den CloudTrail validate-logs
Befehl AWS Command Line Interface, um Protokolle mit dem zu validieren. Der Befehl verwendet die Digest-Dateien, die an den Amazon-S3-Bucket gesendet wurden, um die Validierung durchzuführen. Weitere Informationen über Digest-Dateien finden Sie unter CloudTrail Struktur der Digest-Datei.
Der AWS CLI ermöglicht es Ihnen, die folgenden Arten von Änderungen zu erkennen:
-
Änderung oder Löschung von CloudTrail Protokolldateien
-
Änderung oder Löschung von CloudTrail Digest-Dateien
-
Änderung oder Löschung von Protokoll- und Digest-Dateien
Anmerkung
Das AWS CLI validiert nur Protokolldateien, auf die von Digestdateien verwiesen wird. Weitere Informationen finden Sie unter Es wird geprüft, ob eine bestimmte Datei geliefert wurde von CloudTrail.
Voraussetzungen
Um die Integrität der Protokolldatei mit der zu überprüfen AWS CLI, müssen die folgenden Bedingungen erfüllt sein:
-
Sie müssen über eine Online-Verbindung zu verfügen AWS.
-
Sie müssen über Lesezugriff auf den Amazon-S3-Bucket verfügen, der die Digest- und Protokolldateien enthält.
-
Die Digest- und Protokolldateien dürfen nicht von dem ursprünglichen Amazon S3 S3-Speicherort verschoben worden sein, CloudTrail an dem sie geliefert wurden.
Anmerkung
Protokolldateien, die auf einen lokalen Datenträger heruntergeladen wurden, können mit der AWS CLI nicht validiert werden. Eine Anleitung zum Erstellen Ihrer eigenen Tools zur Validierung finden Sie unter Benutzerdefinierte Implementierungen der CloudTrail Integritätsprüfung von Protokolldateien.
validate-logs
Syntax
Im Folgenden wird die Syntax für validate-logs
beschrieben. Optionale Parameter sind in Klammern angegeben.
aws cloudtrail validate-logs --trail-arn <trailARN> --start-time <start-time> [--end-time <end-time>] [--s3-bucket <amzn-s3-demo-bucket>] [--s3-prefix <prefix>] [--account-id <account-id>] [--verbose]
Anmerkung
Der Befehl validate-logs
ist regionsspezifisch. Sie müssen die --region
globale Option angeben, um Protokolle für einen bestimmten AWS-Region Bereich zu validieren.
Optionen
Im Folgenden werden die Befehlszeilen-Optionen für validate-logs
aufgeführt. Die Optionen --trail-arn
und --start-time
sind erforderlich. Die Option --account-id
ist zusätzlich für organisatorische Trails erforderlich.
--start-time
-
Gibt an, dass Protokolldateien, die am oder nach dem angegebenen UTC Zeitstempelwert geliefert wurden, validiert werden. Beispiel:
2015-01-08T05:21:42Z
.
--end-time
-
Gibt optional an, dass Protokolldateien, die am oder vor dem angegebenen UTC Zeitstempelwert geliefert wurden, überprüft werden. Der Standardwert ist die aktuelle UTC Uhrzeit (
Date.now()
). Beispiel:2015-01-08T12:31:41Z
.Anmerkung
Für den angegebenen Zeitraum werden mit dem
validate-logs
-Befehl nur die Protokolldateien geprüft, auf die in den entsprechenden Digest-Dateien verwiesen wird. Andere Protokolldateien im Amazon-S3-Bucket werden nicht geprüft. Weitere Informationen finden Sie unter Es wird geprüft, ob eine bestimmte Datei geliefert wurde von CloudTrail.
--s3-bucket
-
Gibt optional den Amazon-S3-Bucket an, in dem die Digest-Dateien gespeichert sind. Wenn kein Bucket-Name angegeben ist, AWS CLI ruft sie ihn durch einen Aufruf ab
DescribeTrails()
.
--s3-prefix
-
Gibt optional das Amazon-S3-Präfix an, mit dem die Digest-Dateien gespeichert sind. Wenn nicht angegeben, AWS CLI ruft sie ihn durch einen Aufruf ab
DescribeTrails()
.Anmerkung
Verwenden Sie diese Option nur, wenn Ihr aktuelles Präfix nicht mit dem Präfix identisch ist, das in dem angegebenen Zeitraum verwendet wurde.
--account-id
-
Gibt optional das Konto für die Validierung von Protokollen an. Dieser Parameter ist für Organisations-Trails zur Validierung von Protokollen für das jeweilige Konto innerhalb einer Organisation erforderlich.
--trail-arn
-
Gibt den Amazon-Ressourcennamen (ARN) des zu validierenden Trails an. Es ARN folgt das Format eines Pfads.
arn:aws:cloudtrail:us-east-2:111111111111:trail/MyTrailName
Anmerkung
Um den Pfad ARN für einen Trail zu ermitteln, können Sie den
describe-trails
Befehl vor dem Laufen verwendenvalidate-logs
.Möglicherweise möchten Sie zusätzlich zum Trail den Bucket-Namen und das Präfix angeben, ARN wenn Protokolldateien in dem von Ihnen angegebenen Zeitraum an mehr als einen Bucket übermittelt wurden, und Sie möchten die Überprüfung auf die Protokolldateien in nur einem der Buckets beschränken.
--verbose
-
Gibt optional Validierungsinformationen für jede Protokoll- oder Digest-Datei in dem angegebenen Zeitraum aus. Die Ausgabe gibt an, ob die Datei unverändert ist oder geändert bzw. gelöscht wurde. Im Non-Verbose-Modus (Standard) werden Informationen nur für die Fälle zurückgegeben, in denen Fehler bei der Validierung aufgetreten sind.
Beispiel
Im folgenden Beispiel werden die Protokolldateien von der angegebenen Anfangszeit bis zum aktuellen Zeitpunkt mit dem Amazon-S3-Bucket, der für den aktuellen Trail konfiguriert ist, und unter Angabe der ausführlichen Ausgabe validiert.
aws cloudtrail validate-logs --start-time 2015-08-27T00:00:00Z --end-time 2015-08-28T00:00:00Z --trail-arn arn:aws:cloudtrail:us-east-2:111111111111:trail/my-trail-name --verbose
Funktionsweise von validate-logs
Der validate-logs
-Befehl beginnt mit der Validierung der letzten Digest-Datei in dem angegebenen Zeitraum. Zunächst wird überprüft, dass die Digest-Datei von dem Speicherort heruntergeladen wurde, zu dem sie angeblich gehört. Mit anderen Worten, wenn die Digest-Datei df1
vom S3-Speicherort CLI heruntergeladen wirdp1
, wird dies anhand von Validate-Logs überprüft. p1 == df1.digestS3Bucket + '/' + df1.digestS3Object
Wenn die Signatur der Digest-Datei gültig ist, wird der Hash-Wert jedes der Protokolle, auf die in der Digest-Datei verwiesen wird, überprüft. Der Befehl validiert dann nacheinander die vorherigen Digest-Dateien und ihre referenzierten Protokolldateien. Der Vorgang wird so lange fortgesetzt, bis der angegebene Wert für start-time
erreicht ist oder die Digest-Kette endet. Wenn eine Digest-Datei fehlt oder ungültig ist, wird der Zeitraum, der nicht validiert werden kann, in der Ausgabe angegeben.
Validierungsergebnisse
Validierungsergebnisse beginnen mit einem Zusammenfassungs-Header in folgendem Format:
Validating log files for trail
trail_ARN
betweentime_stamp
andtime_stamp
Jede Zeile der Hauptausgabe enthält die Validierungsergebnisse für eine einzelne Digest- oder Protokolldatei in folgendem Format:
<Digest file | Log file> <
S3 path
> <Validation Message
>
Die folgende Tabelle beschreibt die möglichen Validierungsmeldungen für Protokoll- und Digest-Dateien.
Dateityp | Validierungsmeldung | Beschreibung |
---|---|---|
Digest file |
valid |
Die Signatur der Digest-Datei ist gültig. Die Protokolldateien, auf die sie verweist, können überprüft werden. Diese Meldung ist nur im Verbose-Modus enthalten. |
Digest file |
INVALID: has been moved from its original location |
Der S3-Bucket oder das S3-Objekt, aus dem die Digest-Datei abgerufen wurde, stimmt nicht mit den S3-Bucket- oder S3-Objekt-Speicherorten überein, die in der Digest-Datei selbst aufgezeichnet sind. |
Digest file |
INVALID: invalid format |
Das Format der Digest-Datei ist ungültig. Die Protokolldateien, die dem Zeitraum entsprechen, den die Digest-Datei repräsentiert, können nicht validiert werden. |
Digest file |
INVALID: not found |
Die Digest-Datei wurde nicht gefunden. Die Protokolldateien, die dem Zeitraum entsprechen, den die Digest-Datei repräsentiert, können nicht validiert werden. |
Digest file |
INVALID: public key not found for fingerprint fingerprint |
Der öffentliche Schlüssel, der zu dem Fingerabdruck in der Digest-Datei gehört, wurde nicht gefunden. Die Digest-Datei kann nicht validiert werden. |
Digest file |
INVALID: signature verification failed |
Die Signatur der Digest-Datei ist ungültig. Da die Digest-Datei nicht gültig ist, können die Protokolldateien, auf die sie verweist, nicht validiert werden, und es können keine Aussagen über die darin enthaltenen Aktivitäten getroffen werden. API |
Digest file |
INVALID: Unable to load PKCS #1 key with fingerprint
fingerprint |
Da der DER kodierte öffentliche Schlüssel im Format PKCS #1 mit dem angegebenen Fingerabdruck nicht geladen werden konnte, kann die Digest-Datei nicht validiert werden. |
Log file |
valid |
Die Protokolldatei wurde validiert und seit der Bereitstellung nicht geändert. Diese Meldung ist nur im Verbose-Modus enthalten. |
Log file |
INVALID: hash value doesn't match |
Der Hash für die Protokolldatei stimmt nicht überein. Die Protokolldatei wurde nach der Lieferung von geändert. CloudTrail |
Log file |
INVALID: invalid format |
Das Format der Protokolldatei ist ungültig. Die Protokolldatei kann nicht validiert werden. |
Log file |
INVALID: not found |
Die Protokolldatei wurde nicht gefunden und kann nicht validiert werden. |
Die Ausgabe umfasst zusammenfassende Informationen über die zurückgegebenen Ergebnisse.
Beispielausgaben
Verbose
Der folgende validate-logs
-Beispielbefehl verwendet das Flag --verbose
und erzeugt die folgende Beispielausgabe. [...]
gibt an, dass die Beispielausgabe gekürzt wurde.
aws cloudtrail validate-logs --trail-arn arn:aws:cloudtrail:us-east-2:111111111111:trail/example-trail-name --start-time 2015-08-31T22:00:00Z --end-time 2015-09-01T19:17:29Z --verbose
Validating log files for trail arn:aws:cloudtrail:us-east-2:111111111111:trail/example-trail-name between 2015-08-31T22:00:00Z and 2015-09-01T19:17:29Z Digest file s3://amzn-s3-demo-bucket/AWSLogs/111111111111/CloudTrail-Digest/us-east-2/2015/09/01/111111111111_CloudTrail-Digest_us-east-2_example-trail-name_us-east-2_20150901T201728Z.json.gz valid Log file s3://amzn-s3-demo-bucket/AWSLogs/111111111111/CloudTrail/us-east-2/2015/09/01/111111111111_CloudTrail_us-east-2_20150901T1925Z_WZZw1RymnjCRjxXc.json.gz valid Log file s3://amzn-s3-demo-bucket/AWSLogs/111111111111/CloudTrail/us-east-2/2015/09/01/111111111111_CloudTrail_us-east-2_20150901T1915Z_POuvV87nu6pfAV2W.json.gz valid Log file s3://amzn-s3-demo-bucket/AWSLogs/111111111111/CloudTrail/us-east-2/2015/09/01/111111111111_CloudTrail_us-east-2_20150901T1930Z_l2QgXhAKVm1QXiIA.json.gz valid Log file s3://amzn-s3-demo-bucket/AWSLogs/111111111111/CloudTrail/us-east-2/2015/09/01/111111111111_CloudTrail_us-east-2_20150901T1920Z_eQJteBBrfpBCqOqw.json.gz valid Log file s3://amzn-s3-demo-bucket/AWSLogs/111111111111/CloudTrail/us-east-2/2015/09/01/111111111111_CloudTrail_us-east-2_20150901T1950Z_9g5A6qlR2B5KaRdq.json.gz valid Log file s3://amzn-s3-demo-bucket/AWSLogs/111111111111/CloudTrail/us-east-2/2015/09/01/111111111111_CloudTrail_us-east-2_20150901T1920Z_i4DNCC12BuXd6Ru7.json.gz valid Log file s3://amzn-s3-demo-bucket/AWSLogs/111111111111/CloudTrail/us-east-2/2015/09/01/111111111111_CloudTrail_us-east-2_20150901T1915Z_Sg5caf2RH6Jdx0EJ.json.gz valid Digest file s3://amzn-s3-demo-bucket/AWSLogs/111111111111/CloudTrail-Digest/us-east-2/2015/09/01/111111111111_CloudTrail-Digest_us-east-2_example-trail-name_us-east-2_20150901T191728Z.json.gz valid Log file s3://amzn-s3-demo-bucket/AWSLogs/111111111111/CloudTrail/us-east-2/2015/09/01/111111111111_CloudTrail_us-east-2_20150901T1910Z_YYSFiuFQk4nrtnEW.json.gz valid [...] Log file s3://amzn-s3-demo-bucket/AWSLogs/144218288521/CloudTrail/us-east-2/2015/09/01/144218288521_CloudTrail_us-east-2_20150901T1055Z_0Sfy6m9f6iBzmoPF.json.gz valid Log file s3://amzn-s3-demo-bucket/AWSLogs/144218288521/CloudTrail/us-east-2/2015/09/01/144218288521_CloudTrail_us-east-2_20150901T1040Z_lLa3QzVLpOed7igR.json.gz valid Digest file s3://amzn-s3-demo-bucket/AWSLogs/144218288521/CloudTrail-Digest/us-east-2/2015/09/01/144218288521_CloudTrail-Digest_us-east-2_example-trail-name_us-east-2_20150901T101728Z.json.gz INVALID: signature verification failed Digest file s3://amzn-s3-demo-bucketAWSLogs/144218288521/CloudTrail-Digest/us-east-2/2015/09/01/144218288521_CloudTrail-Digest_us-east-2_example-trail-name_us-east-2_20150901T091728Z.json.gz valid Log file s3://amzn-s3-demo-bucket/AWSLogs/144218288521/CloudTrail/us-east-2/2015/09/01/144218288521_CloudTrail_us-east-2_20150901T0830Z_eaFvO3dwHo4NCqqc.json.gz valid Digest file s3://amzn-s3-demo-bucket/AWSLogs/144218288521/CloudTrail-Digest/us-east-2/2015/09/01/144218288521_CloudTrail-Digest_us-east-2_example-trail-name_us-east-2_20150901T081728Z.json.gz valid Digest file s3://amzn-s3-demo-bucket/AWSLogs/144218288521/CloudTrail-Digest/us-east-2/2015/09/01/144218288521_CloudTrail-Digest_us-east-2_example-trail-name_us-east-2_20150901T071728Z.json.gz valid [...] Log file s3://amzn-s3-demo-bucket/AWSLogs/111111111111/CloudTrail/us-east-2/2015/08/31/111111111111_CloudTrail_us-east-2_20150831T2245Z_mbJkEO5kNcDnVhGh.json.gz valid Log file s3://amzn-s3-demo-bucket/AWSLogs/111111111111/CloudTrail/us-east-2/2015/08/31/111111111111_CloudTrail_us-east-2_20150831T2225Z_IQ6kXy8sKU03RSPr.json.gz valid Log file s3://amzn-s3-demo-bucket/AWSLogs/111111111111/CloudTrail/us-east-2/2015/08/31/111111111111_CloudTrail_us-east-2_20150831T2230Z_eRPVRTxHQ5498ROA.json.gz valid Log file s3://amzn-s3-demo-bucket/AWSLogs/111111111111/CloudTrail/us-east-2/2015/08/31/111111111111_CloudTrail_us-east-2_20150831T2255Z_IlWawYZGvTWB5vYN.json.gz valid Digest file s3://amzn-s3-demo-bucket/AWSLogs/111111111111/CloudTrail-Digest/us-east-2/2015/08/31/111111111111_CloudTrail-Digest_us-east-2_example-trail-name_us-east-2_20150831T221728Z.json.gz valid Results requested for 2015-08-31T22:00:00Z to 2015-09-01T19:17:29Z Results found for 2015-08-31T22:17:28Z to 2015-09-01T20:17:28Z: 22/23 digest files valid, 1/23 digest files INVALID 63/63 log files valid
Non-Verbose
Der folgende validate-logs
-Beispielbefehl verwendet kein --verbose
-Flag. In der folgenden Beispielausgabe wurde ein Fehler gefunden. Es werden nur Header-, Fehler- und Zusammenfassungsinformationen zurückgegeben.
aws cloudtrail validate-logs --trail-arn arn:aws:cloudtrail:us-east-2:111111111111:trail/example-trail-name --start-time 2015-08-31T22:00:00Z --end-time 2015-09-01T19:17:29Z
Validating log files for trail arn:aws:cloudtrail:us-east-2:111111111111:trail/example-trail-name between 2015-08-31T22:00:00Z and 2015-09-01T19:17:29Z Digest file s3://amzn-s3-demo-bucket/AWSLogs/144218288521/CloudTrail-Digest/us-east-2/2015/09/01/144218288521_CloudTrail-Digest_us-east-2_example-trail-name_us-east-2_20150901T101728Z.json.gz INVALID: signature verification failed Results requested for 2015-08-31T22:00:00Z to 2015-09-01T19:17:29Z Results found for 2015-08-31T22:17:28Z to 2015-09-01T20:17:28Z: 22/23 digest files valid, 1/23 digest files INVALID 63/63 log files valid
Es wird geprüft, ob eine bestimmte Datei geliefert wurde von CloudTrail
Um zu überprüfen, ob eine bestimmte Datei in Ihrem Bucket von zugestellt wurde CloudTrail, führen Sie den Vorgang für den Zeitraum, der die Datei enthält, validate-logs
im ausführlichen Modus aus. Wenn die Datei in der Ausgabe von erscheintvalidate-logs
, dann wurde sie geliefert von CloudTrail.