Zugriffsprotokolle für Amazon VPC Lattice - VPCAmazon-Gitter

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.

Zugriffsprotokolle für Amazon VPC Lattice

Zugriffsprotokolle erfassen detaillierte Informationen zu Ihren VPC Lattice-Diensten. Sie können diese Zugriffsprotokolle verwenden, um Verkehrsmuster zu analysieren und alle Dienste im Netzwerk zu überprüfen.

Zugriffsprotokolle sind optional und standardmäßig deaktiviert. Nachdem Sie die Zugriffsprotokolle aktiviert haben, können Sie sie jederzeit deaktivieren.

Preisgestaltung

Bei der Veröffentlichung von Zugriffsprotokollen fallen Gebühren an. Protokolle, die AWS nativ in Ihrem Namen veröffentlicht werden, werden als verkaufte Protokolle bezeichnet. Weitere Informationen zu den Preisen für verkaufte Logs finden Sie unter CloudWatch Amazon-Preise, wählen Sie Logs und sehen Sie sich die Preise unter Verkaufte Logs an.

Für die Aktivierung von Zugriffsprotokollen sind IAM-Berechtigungen erforderlich

Um Zugriffsprotokolle zu aktivieren und die Protokolle an ihre Ziele zu senden, muss die Richtlinie dem IAM-Benutzer, der Gruppe oder der Rolle, die Sie verwenden, die folgenden Aktionen zugeordnet haben.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Sid": "ManageVPCLatticeAccessLogSetup", "Action": [ "logs:CreateLogDelivery", "logs:GetLogDelivery", "logs:UpdateLogDelivery", "logs:DeleteLogDelivery", "logs:ListLogDeliveries", "vpc-lattice:CreateAccessLogSubscription", "vpc-lattice:GetAccessLogSubscription", "vpc-lattice:UpdateAccessLogSubscription", "vpc-lattice:DeleteAccessLogSubscription", "vpc-lattice:ListAccessLogSubscriptions" ], "Resource": [ "*" ] } ] }

Informationen finden Sie im Abschnitt Hinzufügen und Entfernen von IAM-Identitätsberechtigungen im AWS Identity and Access Management -Benutzerhandbuch.

Nachdem Sie die Richtlinie aktualisiert haben, die dem IAM-Benutzer, der Gruppe oder der Rolle zugeordnet ist, die Sie verwenden, gehen Sie zu. Aktivieren der Zugriffsprotokolle

Ziele der Zugriffsprotokolle

Sie können Zugriffsprotokolle an die folgenden Ziele senden.

CloudWatch Amazon-Protokolle
  • VPC Lattice übermittelt Logs in der Regel innerhalb von 2 CloudWatch Minuten an Logs. Beachten Sie jedoch, dass die tatsächliche Protokollzustellung nach bestem Wissen erfolgt und es zu zusätzlicher Latenz kommen kann.

  • Eine Ressourcenrichtlinie wird automatisch erstellt und der CloudWatch Protokollgruppe hinzugefügt, wenn die Protokollgruppe nicht über bestimmte Berechtigungen verfügt. Weitere Informationen finden Sie unter An Logs sent to CloudWatch Logs im CloudWatch Amazon-Benutzerhandbuch.

  • Zugriffsprotokolle, an die gesendet werden, finden Sie in der CloudWatch Konsole CloudWatch unter Protokollgruppen. Weitere Informationen finden Sie im CloudWatch Amazon-Benutzerhandbuch unter An CloudWatch Logs gesendete Protokolldaten anzeigen.

Amazon S3
  • VPC Lattice übermittelt Protokolle in der Regel innerhalb von 6 Minuten an Amazon S3. Beachten Sie jedoch, dass die tatsächliche Protokollzustellung nach bestem Wissen erfolgt und es zu zusätzlicher Latenz kommen kann.

  • Eine Bucket-Richtlinie wird automatisch erstellt und Ihrem Amazon S3 S3-Bucket hinzugefügt, falls der Bucket nicht über bestimmte Berechtigungen verfügt. Weitere Informationen finden Sie unter An Amazon S3 gesendete Logs im CloudWatchAmazon-Benutzerhandbuch.

  • Zugriffsprotokolle, die an Amazon S3 gesendet werden, verwenden die folgende Benennungskonvention:

    [bucket]/[prefix]/AWSLogs/[accountId]/VpcLattice/AccessLogs/[region]/[YYYY/MM/DD]/[resource-id]/[accountId]_VpcLatticeAccessLogs_[region]_[resource-id]_YYYYMMDDTHHmmZ_[hash].json.gz
Amazon Data Firehose
  • VPC Lattice liefert Logs in der Regel innerhalb von 2 Minuten an Firehose. Beachten Sie jedoch, dass die tatsächliche Protokollzustellung nach bestem Wissen erfolgt und es zu zusätzlichen Latenzen kommen kann.

  • Es wird automatisch eine serviceverknüpfte Rolle erstellt, die VPC Lattice die Erlaubnis erteilt, Zugriffsprotokolle an zu senden. Amazon Data Firehose Damit die automatische Rollenerstellung erfolgreich ist, müssen die Benutzer über die Berechtigung für die Aktion iam:CreateServiceLinkedRole verfügen. Weitere Informationen finden Sie unter Gesendete Logs Amazon Data Firehose im CloudWatch Amazon-Benutzerhandbuch.

  • Weitere Informationen zum Anzeigen der gesendeten Protokolle finden Sie unter Monitoring Amazon Kinesis Data Streams im Amazon Data Firehose Developer Guide. Amazon Data Firehose

Aktivieren der Zugriffsprotokolle

Gehen Sie wie folgt vor, um die Zugriffsprotokolle so zu konfigurieren, dass Zugriffsprotokolle erfasst und an das von Ihnen gewählte Ziel gesendet werden.

Aktivieren Sie die Zugriffsprotokolle mithilfe der Konsole

Sie können während der Erstellung Zugriffsprotokolle für ein Dienstnetzwerk oder für einen Dienst aktivieren. Sie können Zugriffsprotokolle auch aktivieren, nachdem Sie ein Dienstnetzwerk oder einen Dienst erstellt haben, wie im folgenden Verfahren beschrieben.

Um einen Basisdienst mit der Konsole zu erstellen
  1. Öffnen Sie die Amazon VPC-Konsole unter https://console.aws.amazon.com/vpc/.

  2. Wählen Sie das Servicenetzwerk oder den Dienst aus.

  3. Wählen Sie Aktionen, Protokolleinstellungen bearbeiten aus.

  4. Schalten Sie den Schalter Zugriffsprotokolle ein.

  5. Fügen Sie wie folgt ein Zustellungsziel für Ihre Zugriffsprotokolle hinzu:

    • Wählen Sie CloudWatch Protokollgruppe und wählen Sie eine Protokollgruppe aus. Um eine Protokollgruppe zu erstellen, wählen Sie Protokollgruppe erstellen in CloudWatch.

    • Wählen Sie S3-Bucket aus und geben Sie den S3-Bucket-Pfad einschließlich eines beliebigen Präfixes ein. Um Ihre S3-Buckets zu durchsuchen, wählen Sie Browse S3.

    • Wählen Sie Kinesis Data Firehose Delivery Stream und wählen Sie einen Delivery Stream aus. Um einen Delivery Stream zu erstellen, wählen Sie Create a delivery stream in Kinesis.

  6. Wählen Sie Änderungen speichern aus.

Aktivieren Sie die Zugriffsprotokolle mit dem AWS CLI

Verwenden Sie den CLI-Befehl create-access-log-subscription, um Zugriffsprotokolle für Servicenetzwerke oder Dienste zu aktivieren.

Inhalt des Zugriffsprotokolls

Die folgende Tabelle beschreibt die Felder eines Zugriffsprotokolleintrags.

Feld Beschreibung Format
hostHeader

Der Autoritätsheader der Anfrage.

Zeichenfolge

sslCipher

Der OpenSSL-Name für den Satz von Chiffren, der zum Herstellen der Client-TLS-Verbindung verwendet wird.

Zeichenfolge

serviceNetworkArn

Das Servicenetzwerk ARN.

arn:aws:vpc-lattice: region: konto:servicenetwork/id

resolvedUser

Der ARN des Benutzers, wenn die Authentifizierung aktiviert ist und die Authentifizierung abgeschlossen ist.

null | ARN | „Anonym“ | „Unbekannt“

authDeniedReason

Der Grund, warum der Zugriff verweigert wird, wenn die Authentifizierung aktiviert ist.

null | „Dienst“ | „Netzwerk“ | „Identität“

requestMethod

Der Methodenheader der Anfrage.

Zeichenfolge

targetGroupArn

Die Zielhostgruppe, zu der der Zielhost gehört.

Zeichenfolge

tlsVersion

Die TLS-Version.

TLSv x

userAgent

Der User-Agent-Header.

Zeichenfolge

ServerNameIndication

[Nur HTTPS] Der Wert, der auf dem SSL-Verbindungs-Socket für Server Name Indication (SNI) festgelegt ist.

Zeichenfolge

destinationVpcId

Die Ziel-VPC-ID.

vpc-xxxxxxxx

sourceIpPort

Die IP-Adresse und:Port der Quelle.

ip: Port

targetIpPort

Die IP-Adresse und der Port des Ziels.

ip: Anschluss

serviceArn

Der Dienst ARN.

arn:aws:vpc-lattice: region: konto:service/id

sourceVpcId

Die Quell-VPC-ID.

vpc-xxxxxxxx

requestPath

Den Pfad der Anfrage.

LatticePath? : Pfad

startTime

Die Startzeit der Anfrage.

YYYY - MM - DD T HH: MM: SS Z

protocol

Das Protokoll. Derzeit entweder HTTP/1.1 oder HTTP/2.

Zeichenfolge

responseCode

Der HTTP-Antwort-Code. Nur der Antwortcode für die endgültigen Header wird protokolliert. Weitere Informationen finden Sie unter Beheben Sie Probleme mit Zugriffsprotokollen.

Ganzzahl

bytesReceived

Die empfangenen Text- und Header-Bytes.

Ganzzahl

bytesSent

Die gesendeten Text- und Header-Bytes.

Ganzzahl

duration

Gesamtdauer der Anfrage in Millisekunden von der Startzeit bis zum letzten ausgehenden Byte.

Ganzzahl

requestToTargetDuration

Gesamtdauer der Anfrage in Millisekunden von der Startzeit bis zum letzten an das Ziel gesendeten Byte.

Ganzzahl

responseFromTargetDuration

Gesamtdauer der Anfrage in Millisekunden vom ersten vom Zielhost gelesenen Byte bis zum letzten an den Client gesendeten Byte.

Ganzzahl

grpcResponseCode

Der gRPC-Antwortcode. Weitere Informationen finden Sie unter Statuscodes und ihre Verwendung in gRPC. Dieses Feld wird nur protokolliert, wenn der Dienst gRPC unterstützt.

Ganzzahl

callerPrincipal

Der authentifizierte Prinzipal.

Zeichenfolge

callerX509SubjectCN

Der Name des Antragstellers (CN).

Zeichenfolge

callerX509IssuerOU

Der Emittent (OU).

Zeichenfolge

callerX509SANNameCN

Die Alternative des Emittenten (Name/CN).

Zeichenfolge

callerX509SANDNS

Der alternative Name des Antragstellers (DNS).

Zeichenfolge

callerX509SANURI

Der alternative Name (URI) des Antragstellers.

Zeichenfolge

sourceVpcArn

Der ARN der VPC, von der die Anfrage stammt.

arn:aws:ec2: region: konto:vpc/id

Beispiel

Es folgt ein Beispiel für einen Protokolleintrag.

{ "hostHeader": "example.com", "sslCipher": "-", "serviceNetworkArn": "arn:aws:vpc-lattice:us-west-2:123456789012:servicenetwork/svn-1a2b3c4d", "resolvedUser": "Unknown", "authDeniedReason": "null", "requestMethod": "GET", "targetGroupArn": "arn:aws:vpc-lattice:us-west-2:123456789012:targetgroup/tg-1a2b3c4d", "tlsVersion": "-", "userAgent": "-", "serverNameIndication": "-", "destinationVpcId": "vpc-0abcdef1234567890", "sourceIpPort": "178.0.181.150:80", "targetIpPort": "131.31.44.176:80", "serviceArn": "arn:aws:vpc-lattice:us-west-2:123456789012:service/svc-1a2b3c4d", "sourceVpcId": "vpc-0abcdef1234567890", "requestPath": "/billing", "startTime": "2023-07-28T20:48:45Z", "protocol": "HTTP/1.1", "responseCode": 200, "bytesReceived": 42, "bytesSent": 42, "duration": 375, "requestToTargetDuration": 1, "responseFromTargetDuration": 1, "grpcResponseCode": 1 }

Beheben Sie Probleme mit Zugriffsprotokollen

Dieser Abschnitt enthält eine Erläuterung der HTTP-Fehlercodes, die Sie möglicherweise in Zugriffsprotokollen sehen.

Fehlercode Mögliche Ursachen

HTTP 400: Bad Request (Schlechte Anfrage)

  • Der Client hat eine falsch formatierte Anfrage gesendet, die nicht der HTTP-Spezifikation entspricht.

  • Der Anforderungsheader hat für den gesamten Anforderungsheader oder mehr als 100 Header mehr als 60 KB überschritten.

  • Der Client hat die Verbindung beendet, bevor er den vollständigen Anfragetext gesendet hat.

HTTP 403: Forbidden (Verboten)

Die Authentifizierung wurde für den Dienst konfiguriert, aber die eingehende Anfrage ist weder authentifiziert noch autorisiert.

HTTP 404: Dienst existiert nicht

Sie versuchen, eine Verbindung zu einem Dienst herzustellen, der nicht existiert oder der nicht im richtigen Dienstnetzwerk registriert ist.

HTTP 500: Internal Server Error (Interner Serverfehler)

Bei VPC Lattice ist ein Fehler aufgetreten, z. B. konnte keine Verbindung zu Zielen hergestellt werden.

HTTP 502: Bad Gateway

Bei VPC Lattice ist ein Fehler aufgetreten.