View a markdown version of this page

An Amazon S3 gesendete Protokolle - CloudWatch Amazon-Protokolle

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.

An Amazon S3 gesendete Protokolle

Ein AWS CLI-Beispiel finden Sie unterErstellen Sie eine Lieferung an Amazon S3.

Benutzerberechtigungen

Um das Senden von Protokollen an Amazon S3 zu aktivieren, müssen Sie mit den folgenden Berechtigungen angemeldet sein.

JSON
{ "Version":"2012-10-17", "Statement": [ { "Sid": "ReadWriteAccessForLogDeliveryActions", "Effect": "Allow", "Action": [ "logs:GetDelivery", "logs:GetDeliverySource", "logs:PutDeliveryDestination", "logs:GetDeliveryDestinationPolicy", "logs:DeleteDeliverySource", "logs:PutDeliveryDestinationPolicy", "logs:CreateDelivery", "logs:GetDeliveryDestination", "logs:PutDeliverySource", "logs:DeleteDeliveryDestination", "logs:DeleteDeliveryDestinationPolicy", "logs:DeleteDelivery", "logs:UpdateDeliveryConfiguration" ], "Resource": [ "arn:aws:logs:us-east-1:111122223333:delivery:*", "arn:aws:logs:us-east-1:111122223333:delivery-source:*", "arn:aws:logs:us-east-1:111122223333:delivery-destination:*" ] }, { "Sid": "ListAccessForLogDeliveryActions", "Effect": "Allow", "Action": [ "logs:DescribeDeliveryDestinations", "logs:DescribeDeliverySources", "logs:DescribeDeliveries", "logs:DescribeConfigurationTemplates" ], "Resource": "*" }, { "Sid": "AllowUpdatesToResourcePolicyS3", "Effect": "Allow", "Action": [ "s3:PutBucketPolicy", "s3:GetBucketPolicy" ], "Resource": "arn:aws:s3:::bucket-name" } ] }

Amazon S3-Bucket-Ressourcenrichtlinie

Der S3-Bucket, an den die Protokolle gesendet werden, muss über eine Ressourcenrichtlinie verfügen, die bestimmte Berechtigungen enthält. Wenn der Bucket derzeit keine Ressourcenrichtlinie hat und der Benutzer, der die Protokollierung einrichtet, die S3:GetBucketPolicy- und S3:PutBucketPolicy-Berechtigungen für den Bucket hat, dann erstellt AWS automatisch die folgende Richtlinie dafür, wenn Sie mit dem Senden der Protokolle an Amazon S3 beginnen.

JSON
{ "Version":"2012-10-17", "Id": "AWSLogDeliveryWrite20150319", "Statement": [ { "Sid": "AWSLogDeliveryWrite", "Effect": "Allow", "Principal": { "Service": "delivery.logs.amazonaws.com" }, "Action": "s3:PutObject", "Resource": "arn:aws:s3:::amzn-s3-demo-bucket/AWSLogs/account-ID/*", "Condition": { "StringEquals": { "s3:x-amz-acl": "bucket-owner-full-control", "aws:SourceAccount": [ "0123456789" ] }, "ArnLike": { "aws:SourceArn": [ "arn:aws:logs:us-east-1:111122223333:delivery-source:*" ] } } } ] }

Geben Sie in der vorherigen Richtlinie für aws:SourceAccount die Liste der Konto-IDs an, für die Protokolle an diesen Bucket übermittelt werden. Geben Sie für aws:SourceArn die Liste der ARNs der Ressource, die die Protokolle generiert, im Format arn:aws:logs:source-region:source-account-id:* an.

Wenn der Bucket über eine Ressourcenrichtlinie verfügt, diese Richtlinie jedoch nicht die in der vorherigen Richtlinie gezeigte Anweisung enthält und der Benutzer, der die Protokollierung einrichtet, die S3:GetBucketPolicy- und S3:PutBucketPolicy-Berechtigungen für den Bucket hat, wird diese Anweisung an die Ressourcenrichtlinie des Bucket angehängt.

Anmerkung

In einigen Fällen werden möglicherweise AccessDenied Fehler angezeigt, AWS CloudTrail wenn die s3:ListBucket Genehmigung nicht erteilt wurdedelivery.logs.amazonaws.com. Um diese Fehler in Ihren CloudTrail Protokollen zu vermeiden, müssen Sie die entsprechenden s3:ListBucket Berechtigungen erteilen delivery.logs.amazonaws.com und die in der vorherigen Bucket-Richtlinie angegebenen Condition Parameter mit s3:GetBucketAcl einbeziehen. Zur Vereinfachung können Sie AWSLogDeliveryAclCheck direkt auf “Action”: [“s3:GetBucketAcl”, “s3:ListBucket”] aktualisieren, anstatt eine neue Anweisung (Statement) zu erstellen.

Serverseitige Verschlüsselung im Amazon-S3-Bucket

Sie können die Daten in Ihrem Amazon S3-Bucket schützen, indem Sie die serverseitige Verschlüsselung aktivieren. Sie können S3-managed Amazon-Schlüssel (SSE-S3) oder einen in AWS Key Management Service (SSE-KMS) gespeicherten AWS KMS Schlüssel verwenden. Weitere Informationen finden Sie unter Schützen von Daten mithilfe serverseitiger Verschlüsselung.

Wenn Sie möchten SSE-S3, ist keine zusätzliche Konfiguration erforderlich. Amazon S3 verarbeitet den Verschlüsselungsschlüssel.

Vom Kunden verwalteter Schlüssel erforderlich

Wenn Sie möchten SSE-KMS, müssen Sie einen vom Kunden verwalteten Schlüssel verwenden. Sie können keinen AWS verwalteten Schlüssel verwenden. Wenn Sie die Verschlüsselung mit einem AWS verwalteten Schlüssel konfigurieren, liefert CloudWatch Logs die Protokolle in einem unlesbaren Format.

Geben Sie SSE-KMS beispielsweise den Amazon-Ressourcennamen (ARN) des Schlüssels an, wenn Sie die Bucket-Verschlüsselung aktivieren. Fügen Sie der Schlüsselrichtlinie Folgendes hinzu (nicht der Bucket-Richtlinie für Ihren S3-Bucket), damit das Log-Lieferkonto in Ihren S3-Bucket schreiben kann.

{ "Sid": "Allow Logs Delivery to use the key", "Effect": "Allow", "Principal": { "Service": [ "delivery.logs.amazonaws.com" ] }, "Action": [ "kms:Encrypt", "kms:Decrypt", "kms:ReEncrypt*", "kms:GenerateDataKey*", "kms:DescribeKey" ], "Resource": "*", "Condition": { "StringEquals": { "aws:SourceAccount": ["012345678901"] }, "ArnLike": { "aws:SourceArn": ["arn:aws:logs:us-east-1:012345678901:delivery-source:*"] } } }

Geben Sie für aws:SourceAccount die Konto-IDs an, deren Logs an diesen Bucket übermittelt werden. Geben Sie aws:SourceArn die ARNs der Übermittlungsquelle im folgenden Format an:arn:aws:logs:source-region:source-account-id:delivery-source:*.

Format des Amazon S3-Objektschlüssels

Bei Lieferungen, die V2-Berechtigungen verwenden, wird der Amazon S3-Objektschlüssel durch das Zielpräfix, den Protokolltyp, den Suffixpfad der Lieferung und davon, ob Hive-compatible Pfade aktiviert sind, bestimmt. Der genaue servicedefinierte Pfad und die unterstützten Suffixvariablen variieren je nach Protokolltyp.

Zielpräfix

Ein optionaler Pfad, den Sie beim Aufruf PutDeliveryDestination an den Bucket-ARN anhängen. Beispiel, arn:aws:s3:::bucket-name/MyLogPrefix. Gelieferte Objekte beginnen mit diesem Präfix. Bei Protokolltypen, die ansonsten einen AWSLogs/source-account-id/service-name/ Standardpfad verwenden, ersetzt das Zielpräfix diesen Standardpfad.

Suffix-Pfad

Ein optionaler Pfad, den Sie für eine einzelne Lieferung in seinem S3DeliveryConfiguration Verzeichnis konfigurieren. Ein Suffix kann statischen Text und Variablen enthalten. Um die Variablen zu finden, die von einem Protokolltyp unterstützt werden, rufen Sie auf DescribeConfigurationTemplates und überprüfen SieallowedSuffixPathFields. Wenn Sie keinen Suffixpfad angeben, wird der Standard-Suffixpfad des Logtyps verwendet, sofern einer verfügbar ist.

Hive-compatible Pfad

Wenn enableHiveCompatiblePath jatrue, werden Variablen im effektiven Pfad als gerendertkey=value. Zum Beispiel AWSLogs/source-account-id/ wird das Standardkontensegment zuAWSLogs/aws-account-id=source-account-id/. Hive-compatible Die Formatierung gilt auch, wenn Sie nichts angeben suffixPath und der Protokolltyp sein Standardsuffix verwendet.

Die folgenden Beispiele zeigen den Anfang eines Application Load Balancer-Zugriffsprotokoll-Objektschlüssels für das Konto in. 111122223333 us-east-1 Sofern nicht anders angegeben, gehen die Beispiele von keinem Zielpräfix aus.

Konfiguration Anfang des Objektschlüssels
Hive-compatible Pfad deaktiviert, Suffix weggelassen AWSLogs/111122223333/elasticloadbalancing/us-east-1/2026/09/10/
Hive-compatible Pfad aktiviert, Suffix weggelassen AWSLogs/aws-account-id=111122223333/elasticloadbalancing/region=us-east-1/year=2026/month=09/day=10/
Hive-compatible Pfad aktiviert, Suffix myFolder/{yyyy}/{MM}/{dd} AWSLogs/aws-account-id=111122223333/elasticloadbalancing/myFolder/year=2026/month=09/day=10/
ZielpräfixMyLogPrefix, Hive-compatible Pfad deaktiviert, Suffix weggelassen MyLogPrefix/us-east-1/2026/09/10/
Anmerkung

CloudFront dokumentiert das Verhalten des Standardprotokollpfads (v2) und Beispiele finden Sie unter Protokolle an Amazon S3 senden.

Anmerkung

Das Ändern des Zielpräfixes, des Suffixpfads oder der Hive-compatible Einstellung wirkt sich nur auf neue Objekte aus. Bestehende Objekte werden nicht verschoben. Die Bucket-Richtlinie muss s3:PutObject das resultierende Präfix berücksichtigen. Wenn Sie die Bucket-Richtlinie verwalten, behalten Sie die aws:SourceAccount in der Amazon S3-Bucket-Richtlinie angegebenen aws:SourceArn Bedingungen bei Amazon S3-Bucket-Ressourcenrichtlinie und gewähren Sie nur Zugriff auf das erforderliche Präfix.