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.
Aktivieren der Zugriffsprotokolle für Ihren Application Load Balancer
Wenn Sie die Zugriffsprotokolle für Ihren Load Balancer aktivieren, müssen Sie den Namen des S3-Bucket angeben, in dem der Load Balancer die Protokolle speichert. Der Bucket muss über eine Bucket-Richtlinie verfügen, die Elastic Load Balancing die Berechtigung zum Schreiben in den Bucket gewährt.
Aufgaben
Schritt 1: Einen S3-Bucket erstellen
Wenn Sie Zugriffsprotokolle aktivieren, müssen Sie einen S3-Bucket für die Zugriffsprotokolle angeben. Sie können einen vorhandenen Bucket verwenden oder einen Bucket speziell für Zugriffsprotokolle erstellen. Der Bucket muss die folgenden Anforderungen erfüllen.
Voraussetzungen
-
Der Bucket muss sich in derselben Region wie der Load Balancer befinden. Der Bucket und der Load Balancer können verschiedenen Konten gehören.
-
Die einzige serverseitige Verschlüsselungsoption, die unterstützt wird, sind von Amazon S3 verwaltete Schlüssel (SSE-S3). Weitere Informationen finden Sie unter Amazon-S3-verwaltete Verschlüsselungsschlüssel (SSE-S3).
Erstellen eines S3-Buckets mithilfe der Amazon-S3-Konsole
-
Öffnen Sie die Amazon S3 S3-Konsole unter https://console.aws.amazon.com/s3/
. -
Wählen Sie Create Bucket (Bucket erstellen) aus.
-
Führen Sie auf der Seite Create bucket (Bucket erstellen) die folgenden Schritte aus:
-
Geben Sie unter Bucket Name (Bucket-Name) einen Namen für den Bucket ein. Dieser Name muss unter den in Amazon S3 vorhandenen Bucket-Namen eindeutig sein. In einigen Regionen kann es zusätzliche Einschränkungen für Bucket-Namen geben. Weitere Informationen finden Sie unter Bucket-Einschränkungen und Einschränkungen im Amazon S3 S3-Benutzerhandbuch.
-
Wählen Sie unter AWS -Region die Region aus, in der Sie Ihren Load Balancer erstellt haben.
-
Wählen Sie für Standardverschlüsselung die Option Von Amazon S3 verwaltete Schlüssel (SSE-S3) aus.
-
Wählen Sie Create Bucket (Bucket erstellen) aus.
-
Schritt 2: Hinzufügen von Richtlinien zu Ihrem S3-Bucket
Der S3-Bucket muss über eine Bucket-Richtlinie verfügen, die Elastic Load Balancing die Berechtigung zum Schreiben von Zugriffsprotokollen in den Bucket gewährt. Bucket-Richtlinien sind eine Sammlung von JSON-Anweisungen, die in der Sprache der Zugriffsrichtlinie geschrieben sind, um Zugriffsberechtigungen für Ihre Buckets zu definieren. Jeder Anweisung enthält Informationen über eine einzelne Berechtigung und besteht aus einer Reihe von Elementen.
Wenn Sie einen vorhandenen Bucket verwenden, dem bereits eine Richtlinie angehängt ist, können Sie die Anweisung für Zugriffsprotokolle von Elastic Load Balancing zu der Richtlinie hinzufügen. Wenn Sie dies tun, empfehlen wir, dass Sie eine Beurteilung der daraus resultierenden Berechtigungen vornehmen, um sicherzustellen, dass sie für die Benutzer geeignet sind, die Zugriff auf die Bucket-Zugriffsprotokolle benötigen.
Diese Richtlinie gewährt dem Protokolllieferdienst Berechtigungen.
-
{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "logdelivery.elasticloadbalancing.amazonaws.com" }, "Action": "s3:PutObject", "Resource": "arn:aws:s3:::amzn-s3-demo-bucket/prefix/AWSLogs/123456789012/*" } ] }
Geben Sie unter Verwendung des in der Beispielrichtlinie angegebenen Formats den ARN des Speicherorts für die Zugriffsprotokolle ein. Resource Geben Sie immer die Konto-ID des Kontos beim Load Balancer in den Ressourcenpfad des S3-Bucket-ARN ein. Dadurch wird sichergestellt, dass nur Load Balancer des angegebenen Kontos Zugriffsprotokolle in den S3-Bucket schreiben können.
Der von Ihnen angegebene ARN hängt davon ab, ob Sie bei der Aktivierung von Zugriffsprotokollen in Schritt 3 ein Präfix angeben möchten.
Beispiel für einen S3-Bucket-ARN mit einem Präfix
Der S3-Bucket-Name ist amzn-s3-demo-logging-bucket und das Präfix istlogging-prefix.
arn:aws:s3:::amzn-s3-demo-logging-bucket/logging-prefix/AWSLogs/123456789012/*AWS GovCloud (US)— Das folgende Beispiel verwendet die ARN-Syntax für AWS GovCloud (US) Regions.
arn:aws-us-gov:s3:::amzn-s3-demo-logging-bucket/logging-prefix/AWSLogs/123456789012/*
Beispiel für einen S3-Bucket-ARN ohne Präfix
Der Name des S3-Buckets lautetamzn-s3-demo-logging-bucket. Der S3-Bucket-ARN enthält keinen Präfixteil.
arn:aws:s3:::amzn-s3-demo-logging-bucket/AWSLogs/123456789012/*AWS GovCloud (US)— Das folgende Beispiel verwendet die ARN-Syntax für AWS GovCloud (US) Regions.
arn:aws-us-gov:s3:::amzn-s3-demo-logging-bucket/AWSLogs/123456789012/*Bisher benötigten wir für Regionen, die vor August 2022 verfügbar waren, eine Richtlinie, die Berechtigungen für ein Elastic Load Balancing Balancing-Konto gewährte, das spezifisch für die Region war. Diese alte Richtlinie wird weiterhin unterstützt, wir empfehlen jedoch, sie durch die neuere Richtlinie oben zu ersetzen. Wenn Sie es vorziehen, weiterhin die alte Richtlinie zu verwenden, die hier nicht aufgeführt ist, können Sie dies tun.
Als Referenz finden Sie hier die IDs Elastic Load Balancing Balancing-Konten, die Sie Principal in der Legacy-Richtlinie angeben müssen. Beachten Sie, dass Regionen, die nicht in dieser Liste aufgeführt sind, die alte Richtlinie nicht unterstützen.
-
USA Ost (Nord-Virginia) – 127311923021
-
USA Ost (Ohio) – 033677994240
-
USA West (Nordkalifornien) – 027434742980
-
USA West (Oregon) – 797873946194
-
Afrika (Kapstadt) – 098369216593
-
Asien-Pazifik (Hongkong) – 754344448648
-
Asien-Pazifik (Jakarta) – 589379963580
-
Asien-Pazifik (Mumbai) – 718504428378
-
Asien-Pazifik (Osaka) – 383597477331
-
Asien-Pazifik (Seoul) – 600734575887
-
Asien-Pazifik (Singapur) – 114774131450
-
Asien-Pazifik (Sydney) – 783225319266
-
Asien-Pazifik (Tokio) – 582318560864
-
Kanada (Zentral) – 985666609251
-
Europa (Frankfurt) – 054676820928
-
Europa (Irland) – 156460612806
-
Europa (London) – 652711504416
-
Europa (Mailand) – 635631232127
-
Europa (Paris) – 009996457667
-
Europa (Stockholm) – 897822967062
-
Naher Osten (Bahrain) – 076674570225
-
Südamerika (São Paulo) – 507241528517
-
AWS GovCloud (US-Ost) — 190560391635
-
AWS GovCloud (US-West) — 048591011584
Die folgende Richtlinie erteilt Berechtigungen für den angegebenen Protokoll-Bereitstellungsdienst. Verwenden Sie diese Richtlinie für Load Balancer in Outposts-Zonen.
{ "Effect": "Allow", "Principal": { "Service": "logdelivery.elb.amazonaws.com" }, "Action": "s3:PutObject", "Resource": "arn:aws:s3:::amzn-s3-demo-bucket/prefix/AWSLogs/123456789012/*", "Condition": { "StringEquals": { "s3:x-amz-acl": "bucket-owner-full-control" } } }
Geben Sie unter Verwendung des in der Beispielrichtlinie angegebenen Formats den ARN des Speicherorts für die Zugriffsprotokolle ein. Resource Geben Sie immer die Konto-ID des Kontos beim Load Balancer in den Ressourcenpfad des S3-Bucket-ARN ein. Dadurch wird sichergestellt, dass nur Load Balancer des angegebenen Kontos Zugriffsprotokolle in den S3-Bucket schreiben können.
Der von Ihnen angegebene S3-Bucket-ARN hängt davon ab, ob Sie bei der Aktivierung von Zugriffsprotokollen in Schritt 3 ein Präfix angeben möchten.
Beispiel für einen S3-Bucket-ARN mit einem Präfix
Der S3-Bucket-Name ist amzn-s3-demo-logging-bucket und das Präfix istlogging-prefix.
arn:aws:s3:::amzn-s3-demo-logging-bucket/logging-prefix/AWSLogs/123456789012/*
Beispiel für einen S3-Bucket-ARN ohne Präfix
Der Name des S3-Buckets lautetamzn-s3-demo-logging-bucket. Der S3-Bucket-ARN enthält keinen Präfixteil.
arn:aws:s3:::amzn-s3-demo-logging-bucket/AWSLogs/123456789012/*-
Verwenden Sie den vollständigen Ressourcenpfad, einschließlich des Konto-ID-Teils des S3-Bucket-ARN. Verwenden Sie keine Platzhalter (*) im Konto-ID-Teil des S3-Bucket-ARN.
"Resource": "arn:aws:s3:::amzn-s3-demo-bucket/prefix/AWSLogs/123456789012/*" -
Verwenden Sie diese Option,
aws:SourceArnum sicherzustellen, dass nur Load Balancer aus der angegebenen Region und dem angegebenen Konto Ihren Bucket verwenden können."Condition": { "ArnLike": { "aws:SourceArn": "arn:aws:elasticloadbalancing:region:123456789012:loadbalancer/*" } } -
Verwenden Sie
aws:SourceOrgIdwithaws:SourceArn, um sicherzustellen, dass nur Load Balancer der angegebenen Organisation Ihren Bucket verwenden können."Condition": { "StringEquals": { "aws:SourceOrgId": "o-1234567890" }, "ArnLike": { "aws:SourceArn": "arn:aws:elasticloadbalancing:*:*:loadbalancer/*" } } -
Wenn Sie über eine
DenyAnweisung verfügen, die den Zugriff auf Service Principals mit Ausnahme der ausdrücklich erlaubten verhindert, sollten Sie dies der Liste der erlaubten Service Principals hinzufügenlogdelivery.elasticloadbalancing.amazonaws.com. Wenn Sie dieaws:PrincipalServiceNamesListBedingung beispielsweise verwendet haben, fügen Sie Folgendes hinzulogdelivery.elasticloadbalancing.amazonaws.com:{ "Effect": "Deny", "Principal": "*", "Condition": { "StringNotEqualsIfExists": { "aws:PrincipalServiceNamesList": [ "logdelivery.elasticloadbalancing.amazonaws.com", "service.amazonaws.com" ] } } }Wenn Sie das
NotPrincipalElement verwendet haben, fügen Sie eslogdelivery---elasticloadbalancing.amazonaws.com.rproxy.govskope.cawie folgt hinzu. Beachten Sie, dass wir empfehlen, denaws:PrincipalServiceNamesListBedingungsschlüsselaws:PrincipalServiceNameoder zu verwenden, um Serviceprinzipale explizit zuzulassen, anstatt dasNotPrincipalElement zu verwenden. Weitere Informationen finden Sie unter NotPrincipal.{ "Effect": "Deny", "NotPrincipal": { "Service": [ "logdelivery.elasticloadbalancing.amazonaws.com", "service.amazonaws.com" ] } },
Nachdem Sie Ihre Bucket-Richtlinie erstellt haben, verwenden Sie eine Amazon S3 S3-Schnittstelle, z. B. die Amazon S3 S3-Konsole oder AWS CLI Befehle, um Ihre Bucket-Richtlinie an Ihren S3-Bucket anzuhängen.
Schritt 3: Konfigurieren von Zugriffsprotokollen
Verwenden Sie das folgende Verfahren, um Zugriffsprotokolle so zu konfigurieren, dass Anforderungsinformationen erfasst und Protokolldateien an Ihren S3-Bucket gesendet werden.
Voraussetzungen
Der Bucket muss die in Schritt 1 beschriebenen Anforderungen erfüllen und Sie müssen eine Bucket-Richtlinie wie in Schritt 2 beschrieben anhängen. Wenn Sie ein Präfix angeben, darf es die Zeichenfolge "AWSLogs“ nicht enthalten.
So verwalten Sie den S3-Bucket für Ihre Zugriffsprotokolle
Stellen Sie sicher, dass Sie die Zugriffsprotokolle deaktivieren, bevor Sie den Bucket löschen, den Sie für Zugriffsprotokolle konfiguriert haben. Andernfalls kann Elastic Load Balancing keine Zugriffsprotokolle für Ihren Load Balancer in diesem neuen Bucket schreiben, wenn es einen neuen Bucket mit demselben Namen und den erforderlichen Bucket-Richtlinien in einem AWS-Konto gibt, dessen Eigentümer nicht Sie sind.
Schritt 4: Überprüfen der Bucket-Berechtigungen
Nachdem Zugriffsprotokolle für den Load Balancer aktiviert ist, überprüft Elastic Load Balancing den S3-Bucket und erstellt eine Testdatei, um sicherzustellen, dass die Bucket-Richtlinie die erforderlichen Berechtigungen angibt. Sie können die Amazon-S3-Konsole verwenden, um sicherzustellen, dass die Testdatei erstellt wurde. Die Testdatei ist keine tatsächliche Zugriffsprotokolldatei; sie enthält keine Beispieldatensätze.
Um zu überprüfen, ob mit der Amazon S3 S3-Konsole eine Testdatei in Ihrem Bucket erstellt wurde
Öffnen Sie die Amazon S3 S3-Konsole unter https://console.aws.amazon.com/s3/
. -
Wählen Sie den Namen des Buckets aus, den Sie für Zugriffsprotokolle angegeben haben.
-
Navigieren Sie zur Testdatei,
ELBAccessLogTestFile. Der Standort hängt davon ab, ob Sie ein Präfix verwenden.-
Standort mit einem Präfix:
amzn-s3-demo-logging-bucket/logging-prefix/AWSLogs/123456789012/ELBAccessLogTestFile -
Standort ohne Präfix:
amzn-s3-demo-logging-bucket/AWSLogs/123456789012/ELBAccessLogTestFile
-
Fehlersuche
Wenn Sie einen Fehler aufgrund Zugriffsverweigerung erhalten, kann dies die folgenden möglichen Ursachen haben.
-
Die Bucket-Policy gewährt Elastic Load Balancing nicht die Berechtigung, Zugriffsprotokolle in den Bucket zu schreiben. Stellen Sie sicher, dass Sie die richtige Bucket-Richtlinie für die Region verwenden. Stellen Sie sicher, dass der Ressourcen-ARN denselben Bucket-Namen verwendet, den Sie bei der Aktivierung von Zugriffsprotokollen angegeben haben. Stellen Sie sicher, dass der Ressourcen-ARN kein Präfix enthält, wenn Sie bei der Aktivierung von Zugriffsprotokollen kein Präfix angegeben haben.
-
Der Bucket verwendet eine nicht unterstützte serverseitige Verschlüsselungsoption. Der Bucket muss von Amazon S3 verwaltete Schlüssel (SSE-S3) verwenden.