Amazon CloudFront-Logs erfassen
In diesem Dokument wird beschrieben, wie Sie Amazon CloudFront-Logs erfassen können, indem Sie einen Google Security Operations-Feed einrichten.
Weitere Informationen finden Sie unter Datenaufnahme in Google Security Operations – Übersicht.
Ein Aufnahmelabel gibt den Parser an, der Rohdaten in das strukturierte UDM-Format normalisiert. Die Informationen in diesem Dokument gelten für den Parser mit dem Aufnahmelabel AWS_CLOUDFRONT.
Hinweis
Achten Sie darauf, dass der Amazon S3-Bucket erstellt wurde. Weitere Informationen finden Sie unter Ersten S3-Bucket erstellen.
Amazon CloudFront konfigurieren
- Melden Sie sich in der AWS Management Console an.
- Rufen Sie die Amazon S3-Konsole auf und erstellen Sie den Amazon S3-Bucket.
- Klicken Sie auf Ein , um das Logging zu aktivieren.
- Geben Sie im Feld Bucket für Logs den Namen des Amazon S3-Buckets an.
- Geben Sie im Feld Logpräfix ein optionales Präfix an.
- Nachdem die Logdateien im Amazon S3-Bucket gespeichert wurden, erstellen Sie eine SQS-Warteschlange und verknüpfen Sie sie mit dem Amazon S3-Bucket.
Endpunkte für die Konnektivität ermitteln
Prüfen Sie die erforderlichen Identity and Access Management-Nutzer- und KMS-Schlüsselrichtlinien für S3, SQS und KMS.
Ermitteln Sie anhand des Dienstes und der Region die Endpunkte für die Konnektivität. Informationen dazu finden Sie in der folgenden AWS-Dokumentation:
- Informationen zu Logging-Quellen finden Sie unter AWS Identity and Access Management-Endpunkte und -Kontingente.
- Informationen zu S3-Logging-Quellen finden Sie unter Amazon Simple Storage Service-Endpunkte und -Kontingente.
- Informationen zu SQS-Logging-Quellen finden Sie unter Amazon Simple Queue Service-Endpunkte und -Kontingente.
Feeds einrichten
Es gibt zwei verschiedene Einstiegspunkte zum Einrichten von Feeds in der Google SecOps-Plattform:
- SIEM-Einstellungen > Feeds > Neu hinzufügen
- Content Hub > Content-Pakete > Loslegen
AWS CloudFront-Feed einrichten
- Klicken Sie auf das Paket Amazon Cloud Platform.
- Suchen Sie den Logtyp AWS CloudFront.
Geben Sie die Werte in den folgenden Feldern an.
- Quelltyp: Amazon SQS V2
- Warteschlangenname: Der Name der SQS-Warteschlange, aus der gelesen werden soll
- S3-URI: Der Bucket-URI.
s3://your-log-bucket-name/- Ersetzen Sie
your-log-bucket-namedurch den tatsächlichen Namen Ihres S3-Buckets.
- Ersetzen Sie
Optionen für das Löschen der Quelle: Wählen Sie die Löschoption entsprechend Ihren Aufnahmeeinstellungen aus.
Maximales Alter der Datei: Schließen Sie Dateien ein, die in den letzten Tagen geändert wurden. Der Standardwert ist 180 Tage.
SQS-Warteschlangen-Zugriffsschlüssel-ID: Ein Zugriffsschlüssel für das Konto, der ein alphanumerischer String mit 20 Zeichen ist.
SQS-Warteschlangen-Zugriffsschlüssel: Ein Zugriffsschlüssel für das Konto, der ein alphanumerischer String mit 40 Zeichen ist.
Erweiterte Optionen
- Feedname: Ein vorab ausgefüllter Wert, der den Feed identifiziert.
- Asset-Namespace: Der mit dem Feed verknüpfte Namespace.
- Aufnahmelabels: Labels, die auf alle Ereignisse aus diesem Feed angewendet werden.
Klicken Sie auf Feed erstellen.
Weitere Informationen zum Konfigurieren mehrerer Feeds für verschiedene Logtypen in dieser Produktfamilie finden Sie unter Feeds nach Produkt konfigurieren.
Referenz zur Feldzuordnung
Dieser Parser extrahiert Felder aus AWS CloudFront-Logs im SYSLOG- oder JSON-Format und normalisiert sie in das UDM. Er verwendet Grok-Muster zum Parsen von Nachrichtenstrings, verarbeitet verschiedene Datentransformationen (z.B. Typkonvertierungen, Umbenennungen) und erweitert die Daten mit zusätzlichem Kontext wie dem Parsen von User-Agents und der Identifizierung von Anwendungsprotokollen.
UDM-Zuordnungstabelle
| Logfeld | UDM-Zuordnung | Logik |
|---|---|---|
c-ip |
principal.ip |
Direkt zugeordnet. Auch principal.asset.ip zugeordnet. |
c-port |
principal.port |
Direkt zugeordnet. |
cs(Cookie) |
additional.fields[].key: "cookie"additional.fields[].value.string_value: Direkt zugeordnet. |
Bedingt zugeordnet, wenn cs(Cookie) vorhanden ist und agent nicht „://“ enthält. |
cs(Host) |
principal.hostname |
Direkt zugeordnet. Auch principal.asset.hostname zugeordnet. Wird zum Erstellen von target.url verwendet, wenn keine anderen URL-Felder verfügbar sind. |
cs(Referer) |
network.http.referral_url |
Direkt zugeordnet. |
cs(User-Agent) |
network.http.user_agent |
Direkt zugeordnet. Auch network.http.parsed_user_agent zugeordnet und in seine Komponenten geparst, wenn es nicht „://“ enthält. |
cs-bytes |
network.sent_bytes |
Direkt zugeordnet. In eine vorzeichenlose Ganzzahl konvertiert. |
cs-method |
network.http.method |
Direkt zugeordnet. |
cs-protocol |
network.application_protocol |
Nach der Konvertierung in Großbuchstaben zugeordnet. Wenn der Wert nicht als Standardanwendungsprotokoll erkannt wird und cs-protocol-version „HTTP“ enthält, wird network.application_protocol auf „HTTP“ gesetzt. |
dport |
target.port |
Direkt zugeordnet. In eine Ganzzahl konvertiert. |
edge_location |
principal.location.name |
Direkt zugeordnet. |
fle-encrypted-fields |
additional.fields[].key: "fle-encrypted-fields"additional.fields[].value.string_value: Direkt zugeordnet. |
Bedingt zugeordnet, wenn vorhanden. |
fle-status |
additional.fields[].key: "fle-status"additional.fields[].value.string_value: Direkt zugeordnet. |
Bedingt zugeordnet, wenn vorhanden. |
host |
principal.hostname, principal.asset.hostname |
Direkt zugeordnet. |
id |
principal.asset_id |
Direkt mit dem Präfix „id: “ zugeordnet. |
ip |
target.ip, target.asset.ip |
Direkt zugeordnet. |
log_id |
metadata.product_log_id |
Direkt zugeordnet. |
resource |
additional.fields[].key: "resource"additional.fields[].value.string_value: Direkt zugeordnet. |
Bedingt zugeordnet, wenn vorhanden. |
result_type |
additional.fields[].key: "result_type"additional.fields[].value.string_value: Direkt zugeordnet. |
Bedingt zugeordnet, wenn vorhanden. |
sc-bytes |
network.received_bytes |
Direkt zugeordnet. In eine vorzeichenlose Ganzzahl konvertiert. |
sc-content-len |
additional.fields[].key: "sc-content-len"additional.fields[].value.string_value: Direkt zugeordnet. |
Bedingt zugeordnet, wenn vorhanden. |
sc-content-type |
additional.fields[].key: "sc-content-type"additional.fields[].value.string_value: Direkt zugeordnet. |
Bedingt zugeordnet, wenn vorhanden. |
sc-status |
network.http.response_code |
Direkt zugeordnet. In eine Ganzzahl konvertiert. |
ssl-cipher |
network.tls.cipher |
Direkt zugeordnet. |
ssl-protocol |
network.tls.version |
Direkt zugeordnet. |
timestamp |
metadata.event_timestamp |
Geparst und zugeordnet, falls verfügbar. Verschiedene Formate werden unterstützt. |
ts |
metadata.event_timestamp |
Geparst und zugeordnet, falls verfügbar. Das ISO8601-Format wird erwartet. |
url |
target.url |
Direkt zugeordnet. |
url_back_to_product |
metadata.url_back_to_product |
Direkt zugeordnet. |
x-edge-detailed-result-type |
additional.fields[].key: "x-edge-detailed-result-type"additional.fields[].value.string_value: Direkt zugeordnet. |
Bedingt zugeordnet, wenn vorhanden. |
x-edge-location |
additional.fields[].key: "x-edge-location"additional.fields[].value.string_value: Direkt zugeordnet. |
Bedingt zugeordnet, wenn vorhanden. |
x-edge-request-id |
additional.fields[].key: "x-edge-request-id"additional.fields[].value.string_value: Direkt zugeordnet. |
Bedingt zugeordnet, wenn vorhanden. |
x-edge-response-result-type |
additional.fields[].key: "x-edge-response-result-type"additional.fields[].value.string_value: Direkt zugeordnet. |
Bedingt zugeordnet, wenn vorhanden. |
x-edge-result-type |
additional.fields[].key: "x-edge-result-type"additional.fields[].value.string_value: Direkt zugeordnet. |
Bedingt zugeordnet, wenn vorhanden. |
x-forwarded-for |
target.ip, target.asset.ip |
Direkt zugeordnet. Wenn mehrere IP-Adressen vorhanden sind (durch Kommas getrennt), werden sie aufgeteilt und in die entsprechenden UDM-Felder zusammengeführt. |
x-host-header |
target.hostname, target.asset.hostname |
Direkt zugeordnet. Auf „NETWORK_HTTP“ gesetzt, wenn entweder ip oder x-forwarded-for und http_verb vorhanden sind. Andernfalls auf „GENERIC_EVENT“ gesetzt. Fest auf „AWS_CLOUDFRONT“ codiert. Fest auf „AWS CloudFront“ codiert. Fest auf „AMAZON“ codiert. Die Aufnahmezeit des Logeintrags in Google Security Operations. |
Benötigen Sie weitere Hilfe? Antworten von Community-Mitgliedern und Google SecOps-Experten erhalten