Atlassian Confluence-Logs erfassen

Unterstützt in:

In diesem Dokument wird beschrieben, wie Sie Atlassian Confluence-Logs in Google Security Operations aufnehmen. Der Parser versucht zuerst, Felder aus der Rohlogmeldung mithilfe regulärer Ausdrücke (Grok-Muster) zu extrahieren, die für Atlassian Confluence-Logs entwickelt wurden. Wenn das Grok-Parsing fehlschlägt oder das Log im JSON-Format vorliegt, versucht der Code, die Nachricht als JSON zu parsen. Schließlich werden die extrahierten Felder dem Google SecOps-UDM-Schema zugeordnet und mit zusätzlichem Kontext angereichert.

Hinweise

Prüfen Sie, ob folgende Voraussetzungen erfüllt sind:

  • Eine Google SecOps-Instanz
  • Atlassian Confluence Cloud-Konto mit Zugriff auf Audit-Logs ODER Confluence Data Center/Server mit Administratorzugriff
  • Für AWS-basierte Methoden: Privilegierter Zugriff auf AWS (S3, IAM, Lambda, EventBridge)
  • Für die BindPlane-Methode: Windows 2016 oder höher oder Linux-Host mit systemd

Übersicht über die Integrationsoptionen

In diesem Leitfaden werden zwei Integrationspfade beschrieben:

  • Option 1: Confluence Data Center/Server über BindPlane + Syslog
  • Option 2: Confluence Cloud-Audit-Logs über AWS Lambda + S3 (JSON-Format)

Wählen Sie die Option aus, die am besten zu Ihrem Confluence-Bereitstellungstyp und Ihrer Infrastruktur passt.

Option 1: Confluence Data Center/Server über Bindplane + Syslog

Mit dieser Option wird Confluence Data Center oder Server so konfiguriert, dass Logs über Syslog an einen Bindplane-Agent gesendet werden, der sie dann an Google SecOps weiterleitet.

Authentifizierungsdatei für die Aufnahme in Google SecOps abrufen

  1. Melden Sie sich in der Google SecOps-Konsole an.
  2. Rufen Sie die SIEM-Einstellungen > Collection Agents auf.
  3. Laden Sie die Authentifizierungsdatei für die Aufnahme herunter. Speichern Sie die Datei sicher auf dem System, auf dem BindPlane installiert wird.

Google SecOps-Kundennummer abrufen

  1. Melden Sie sich in der Google SecOps-Konsole an.
  2. Rufen Sie die SIEM-Einstellungen > Profile auf.
  3. Kopieren und speichern Sie die Kunden-ID aus dem Bereich Organisationsdetails.

BindPlane-Agent installieren

Installieren Sie den Bindplane-Agent auf Ihrem Windows- oder Linux-Betriebssystem gemäß der folgenden Anleitung.

Fenstereinbau

  1. Öffnen Sie die Eingabeaufforderung oder PowerShell als Administrator.
  2. Führen Sie dazu diesen Befehl aus:

    msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quiet
    

Linux-Installation

  1. Öffnen Sie ein Terminal mit Root- oder Sudo-Berechtigungen.
  2. Führen Sie dazu diesen Befehl aus:

    sudo sh -c "$(curl -fsSlL https://github.com/observiq/bindplane-agent/releases/latest/download/install_unix.sh)" install_unix.sh
    

Zusätzliche Installationsressourcen

BindPlane-Agent zum Erfassen von Syslog-Daten und Senden an Google SecOps konfigurieren

  1. Konfigurationsdatei aufrufen:

    1. Suchen Sie die Datei config.yaml. Normalerweise befindet sie sich unter Linux im Verzeichnis /etc/bindplane-agent/ oder unter Windows im Installationsverzeichnis.
    2. Öffnen Sie die Datei mit einem Texteditor (z. B. nano, vi oder Notepad).
  2. Bearbeiten Sie die Datei config.yamlso:

    receivers:
      udplog:
        # Replace the port and IP address as required
        listen_address: "0.0.0.0:514"
    
    exporters:
      chronicle/chronicle_w_labels:
        compression: gzip
        # Adjust the path to the credentials file you downloaded
        creds_file_path: '/path/to/ingestion-authentication-file.json'
        # Replace with your actual customer ID
        customer_id: YOUR_CUSTOMER_ID
        endpoint: malachiteingestion-pa.googleapis.com
        log_type: 'ATLASSIAN_CONFLUENCE'
        raw_log_field: body
        ingestion_labels:
    
    service:
      pipelines:
        logs/confluence:
          receivers:
            - udplog
          exporters:
            - chronicle/chronicle_w_labels
    
    • Ersetzen Sie den Port und die IP-Adresse nach Bedarf in Ihrer Infrastruktur.
    • Ersetzen Sie <YOUR_CUSTOMER_ID_HERE> durch die tatsächliche Kunden-ID.
    • Aktualisieren Sie /path/to/ingestion-authentication-file.json auf den Pfad, in dem die Authentifizierungsdatei im Abschnitt Get Google SecOps ingestion authentication file (Authentifizierungsdatei für die Google SecOps-Aufnahme abrufen) gespeichert wurde.

Bindplane-Agent neu starten, um die Änderungen zu übernehmen

  • Führen Sie den folgenden Befehl aus, um den Bindplane-Agent unter Linux neu zu starten:

    sudo systemctl restart bindplane-agent
    
  • Um den Bindplane-Agent unter Windows neu zu starten, können Sie entweder die Konsole Dienste verwenden oder den folgenden Befehl eingeben:

    net stop BindPlaneAgent && net start BindPlaneAgent
    

Syslog-Weiterleitung in Confluence Data Center/Server konfigurieren

  1. Melden Sie sich über SSH oder RDP auf Ihrem Confluence-Server an.
  2. Suchen Sie die Log4j-Konfigurationsdatei:
    • Für Log4j2: <confluence-install>/confluence/WEB-INF/classes/log4j2.xml
  3. Bearbeiten Sie die Konfigurationsdatei, um einen SyslogAppender hinzuzufügen:

    <Configuration>
      <Appenders>
        <!-- Existing appenders -->
    
        <Syslog name="SyslogAppender" 
                host="BINDPLANE_AGENT_IP" 
                port="514" 
                protocol="UDP"
                facility="LOCAL0"
                format="RFC5424">
          <PatternLayout pattern="%d{ISO8601} %p [%t] [%c{1}] %m%n"/>
        </Syslog>
      </Appenders>
    
      <Loggers>
        <Root level="info">
          <AppenderRef ref="SyslogAppender"/>
          <!-- Other appender refs -->
        </Root>
    
        <!-- Audit logger -->
        <Logger name="com.atlassian.confluence.event.events.security.AuditEvent" level="info" additivity="false">
          <AppenderRef ref="SyslogAppender"/>
        </Logger>
      </Loggers>
    </Configuration>
    
    • Ersetzen Sie BINDPLANE_AGENT_IP durch die IP-Adresse Ihres BindPlane-Agents.
  4. Starten Sie Confluence neu, um die Änderungen zu übernehmen:

    sudo systemctl restart confluence
    

Option B: rsyslog so konfigurieren, dass lokale Logdateien weitergeleitet werden

  1. Konfigurieren Sie Confluence so, dass Logs in Dateien geschrieben werden (Standardverhalten).
  2. Installieren Sie rsyslog, falls es nicht vorhanden ist:

    sudo apt-get install rsyslog  # Debian/Ubuntu
    sudo yum install rsyslog      # RHEL/CentOS
    
  3. Erstellen Sie die rsyslog-Konfigurationsdatei /etc/rsyslog.d/confluence.conf:

    # Forward Confluence logs to BindPlane
    $ModLoad imfile
    
    # Application logs
    $InputFileName /opt/atlassian/confluence/logs/atlassian-confluence.log
    $InputFileTag confluence-app:
    $InputFileStateFile stat-confluence-app
    $InputFileSeverity info
    $InputFileFacility local0
    $InputRunFileMonitor
    
    # Audit logs (JSON format in DC/Server)
    $InputFileName /var/atlassian/application-data/confluence/log/audit/*.json
    $InputFileTag confluence-audit:
    $InputFileStateFile stat-confluence-audit
    $InputFileSeverity info
    $InputFileFacility local1
    $InputRunFileMonitor
    
    # Forward to BindPlane agent
    *.* @@BINDPLANE_AGENT_IP:514
    
    • Ersetzen Sie BINDPLANE_AGENT_IP durch die IP-Adresse Ihres Bindplane-Agents.
    • Passen Sie die Pfade der Protokolldateien an Ihre Confluence-Installation an:
      • Anwendungslogs sind in der Regel: <confluence-install>/logs/ oder <local-home>/logs/
      • Audit-Logs: <confluence-home>/log/audit/*.json
  4. Starten Sie rsyslog neu:

    sudo systemctl restart rsyslog
    

Option 2: Confluence Cloud-Audit-Logs über AWS Lambda + S3

Confluence Cloud API-Anmeldedaten erfassen

  1. Melden Sie sich in Ihrem Atlassian-Konto an.
  2. Rufen Sie https://id.atlassian.com/manage-profile/security/api-tokens auf.
  3. Klicken Sie auf API-Token erstellen.
  4. Geben Sie ein Label für das Token ein, z. B. Google Security Operations Integration.
  5. Klicken Sie auf Erstellen.
  6. Kopieren und speichern Sie das API-Token sicher.
  7. Notieren Sie sich die URL Ihrer Confluence Cloud-Website (z. B. https://yoursite.atlassian.net).
  8. Notieren Sie sich die E-Mail-Adresse Ihres Atlassian-Kontos (die für die Authentifizierung verwendet wird).

AWS S3-Bucket und IAM für Google SecOps konfigurieren

  1. Erstellen Sie einen Amazon S3-Bucket. Folgen Sie dazu der Anleitung unter Bucket erstellen.
  2. Speichern Sie den Namen und die Region des Buckets zur späteren Verwendung (z. B. confluence-audit-logs).
  3. Erstellen Sie einen Nutzer gemäß dieser Anleitung: IAM-Nutzer erstellen.
  4. Wählen Sie den erstellten Nutzer aus.
  5. Wählen Sie den Tab Sicherheitsanmeldedaten aus.
  6. Klicken Sie im Abschnitt Zugriffsschlüssel auf Zugriffsschlüssel erstellen.
  7. Wählen Sie Drittanbieterdienst als Anwendungsfall aus.
  8. Klicken Sie auf Weiter.
  9. Optional: Fügen Sie ein Beschreibungstag hinzu.
  10. Klicken Sie auf Zugriffsschlüssel erstellen.
  11. Klicken Sie auf CSV-Datei herunterladen, um den Access Key (Zugriffsschlüssel) und den Secret Access Key (geheimer Zugriffsschlüssel) für die zukünftige Verwendung zu speichern.
  12. Klicken Sie auf Fertig.
  13. Wählen Sie den Tab Berechtigungen aus.
  14. Klicken Sie im Bereich Berechtigungsrichtlinien auf Berechtigungen hinzufügen.
  15. Wählen Sie Berechtigungen hinzufügen aus.
  16. Wählen Sie Richtlinien direkt anhängen aus.
  17. Suchen Sie nach der Richtlinie AmazonS3FullAccess.
  18. Wählen Sie die Richtlinie aus.
  19. Klicken Sie auf Weiter.
  20. Klicken Sie auf Berechtigungen hinzufügen.

IAM-Richtlinie und ‑Rolle für S3-Uploads konfigurieren

  1. Rufen Sie in der AWS-Konsole IAM > Richtlinien > Richtlinie erstellen > Tab „JSON“ auf.
  2. Geben Sie die folgende Richtlinie ein:

    {
      "Version": "2012-10-17",
      "Statement": [
        {
          "Sid": "AllowPutObjects",
          "Effect": "Allow",
          "Action": "s3:PutObject",
          "Resource": "arn:aws:s3:::confluence-audit-logs/*"
        },
        {
          "Sid": "AllowGetStateObject",
          "Effect": "Allow",
          "Action": "s3:GetObject",
          "Resource": "arn:aws:s3:::confluence-audit-logs/confluence-audit/state.json"
        }
      ]
    }
    
    • Ersetzen Sie confluence-audit-logs, wenn Sie einen anderen Bucket-Namen eingegeben haben.
  3. Klicken Sie auf Weiter > Richtlinie erstellen.

  4. Nennen Sie die Richtlinie ConfluenceAuditToS3Policy.

  5. Rufen Sie IAM > Rollen > Rolle erstellen > AWS-Service > Lambda auf.

  6. Hängen Sie die neu erstellte Richtlinie ConfluenceAuditToS3Policy an.

  7. Geben Sie der Rolle den Namen ConfluenceAuditLambdaRole und klicken Sie auf Rolle erstellen.

Lambda-Funktion erstellen

  1. Rufen Sie in der AWS Console Lambda > Funktionen auf.
  2. Klicken Sie auf Funktion erstellen > Von Grund auf erstellen.
  3. Geben Sie die folgenden Konfigurationsdetails an:

    Einstellung Wert
    Name ConfluenceAuditToS3
    Laufzeit Python 3.13
    Architektur x86_64
    Ausführungsrolle ConfluenceAuditLambdaRole
  4. Nachdem die Funktion erstellt wurde, öffnen Sie den Tab Code, löschen Sie den Stub und geben Sie den folgenden Code ein:

    import json
    import os
    import boto3
    from datetime import datetime, timezone, timedelta
    from urllib import request, parse, error
    from base64 import b64encode
    
    # Environment variables
    S3_BUCKET = os.environ['S3_BUCKET']
    S3_PREFIX = os.environ.get('S3_PREFIX', 'confluence-audit/')
    STATE_KEY = os.environ.get('STATE_KEY', 'confluence-audit/state.json')
    CONFLUENCE_URL = os.environ['CONFLUENCE_URL']  # e.g., https://yoursite.atlassian.net
    CONFLUENCE_EMAIL = os.environ['CONFLUENCE_EMAIL']
    CONFLUENCE_API_TOKEN = os.environ['CONFLUENCE_API_TOKEN']
    MAX_RECORDS = int(os.environ.get('MAX_RECORDS', '1000'))
    
    s3_client = boto3.client('s3')
    
    def lambda_handler(event, context):
        """Fetch Confluence Cloud audit logs and write to S3."""
    
        # Read last execution state
        start_date = get_last_execution_time()
        end_date = datetime.now(timezone.utc)
    
        print(f"Fetching audit logs from {start_date} to {end_date}")
    
        # Fetch audit records
        records = fetch_audit_logs(start_date, end_date)
    
        if not records:
            print("No new audit records found.")
            save_state(end_date)
            return {'statusCode': 200, 'body': 'No new records'}
    
        # Write to S3
        timestamp = end_date.strftime('%Y%m%d_%H%M%S')
        object_key = f"{S3_PREFIX}audit_{timestamp}.json"
    
        s3_client.put_object(
            Bucket=S3_BUCKET,
            Key=object_key,
            Body='\n'.join(json.dumps(record) for record in records),
            ContentType='application/json'
        )
    
        print(f"Wrote {len(records)} records to s3://{S3_BUCKET}/{object_key}")
    
        # Update state
        save_state(end_date)
    
        return {
            'statusCode': 200,
            'body': f"Processed {len(records)} records"
        }
    
    def get_last_execution_time():
        """Retrieve the last execution timestamp from S3 state file."""
        try:
            response = s3_client.get_object(Bucket=S3_BUCKET, Key=STATE_KEY)
            state = json.loads(response['Body'].read())
            return datetime.fromisoformat(state['last_execution'])
        except s3_client.exceptions.NoSuchKey:
            # First run: fetch logs from last 24 hours
            return datetime.now(timezone.utc) - timedelta(hours=24)
        except Exception as e:
            print(f"Error reading state: {e}")
            return datetime.now(timezone.utc) - timedelta(hours=24)
    
    def save_state(execution_time):
        """Save the execution timestamp to S3 state file."""
        state = {'last_execution': execution_time.isoformat()}
        s3_client.put_object(
            Bucket=S3_BUCKET,
            Key=STATE_KEY,
            Body=json.dumps(state),
            ContentType='application/json'
        )
    
    def fetch_audit_logs(start_date, end_date):
        """Fetch audit logs from Confluence Cloud REST API."""
        records = []
        start_param = int(start_date.timestamp() * 1000)  # milliseconds
        end_param = int(end_date.timestamp() * 1000)
    
        # Build authentication header
        auth_string = f"{CONFLUENCE_EMAIL}:{CONFLUENCE_API_TOKEN}"
        auth_bytes = auth_string.encode('ascii')
        auth_b64 = b64encode(auth_bytes).decode('ascii')
    
        headers = {
            'Authorization': f'Basic {auth_b64}',
            'Accept': 'application/json'
        }
    
        # Confluence Cloud Audit API endpoint
        url = f"{CONFLUENCE_URL}/wiki/rest/api/audit?startDate={start_param}&endDate={end_param}&limit=1000"
    
        try:
            req = request.Request(url, headers=headers)
            with request.urlopen(req) as response:
                data = json.loads(response.read())
                records = data.get('results', [])
                print(f"Retrieved {len(records)} audit records")
        except error.HTTPError as e:
            print(f"HTTP Error: {e.code} - {e.reason}")
            print(e.read().decode())
        except Exception as e:
            print(f"Error fetching audit logs: {e}")
    
        return records[:MAX_RECORDS]
    
  5. Rufen Sie Konfiguration > Umgebungsvariablen auf.

  6. Klicken Sie auf Bearbeiten> Neue Umgebungsvariable hinzufügen.

  7. Geben Sie die folgenden Umgebungsvariablen ein und ersetzen Sie die Platzhalter durch Ihre Werte.

    Schlüssel Beispielwert
    S3_BUCKET confluence-audit-logs
    S3_PREFIX confluence-audit/
    STATE_KEY confluence-audit/state.json
    CONFLUENCE_URL https://yoursite.atlassian.net
    CONFLUENCE_EMAIL your-email@example.com
    CONFLUENCE_API_TOKEN your-api-token-here
    MAX_RECORDS 1000
  8. Wählen Sie den Tab Konfiguration aus.

  9. Klicken Sie im Bereich Allgemeine Konfiguration auf Bearbeiten.

  10. Ändern Sie Zeitlimit in 5 Minuten (300 Sekunden) und klicken Sie auf Speichern.

EventBridge-Zeitplan erstellen

  1. Gehen Sie zu Amazon EventBridge > Scheduler > Create schedule (Amazon EventBridge > Scheduler > Zeitplan erstellen).
  2. Geben Sie die folgenden Konfigurationsdetails an:
    • Wiederkehrender Zeitplan: Preis (1 hour).
    • Ziel: Ihre Lambda-Funktion ConfluenceAuditToS3.
    • Name: ConfluenceAuditToS3-1h.
  3. Klicken Sie auf Zeitplan erstellen.

Optional: IAM-Nutzer mit Lesezugriff und Schlüssel für Google SecOps erstellen

  1. Rufen Sie die AWS-Konsole > IAM > Nutzer auf.
  2. Klicken Sie auf Add users (Nutzer hinzufügen).
  3. Geben Sie die folgenden Konfigurationsdetails an:
    • Nutzer: Geben Sie secops-confluence-reader ein.
    • Zugriffstyp: Wählen Sie Zugriffsschlüssel – programmatischer Zugriff aus.
  4. Klicken Sie auf Weiter.
  5. Klicken Sie auf Richtlinien direkt anhängen > Richtlinie erstellen.
  6. Geben Sie im JSON-Editor die folgende Richtlinie ein:

    {
      "Version": "2012-10-17",
      "Statement": [
        {
          "Effect": "Allow",
          "Action": ["s3:GetObject"],
          "Resource": "arn:aws:s3:::confluence-audit-logs/*"
        },
        {
          "Effect": "Allow",
          "Action": ["s3:ListBucket"],
          "Resource": "arn:aws:s3:::confluence-audit-logs"
        }
      ]
    }
    
  7. Legen Sie secops-reader-policy als Name fest.

  8. Gehen Sie zu Richtlinie erstellen > suchen/auswählen > Weiter > Berechtigungen hinzufügen.

  9. Rufen Sie Sicherheitsanmeldedaten > Zugriffsschlüssel > Zugriffsschlüssel erstellen auf.

  10. Laden Sie die CSV herunter (diese Werte werden in den Feed eingegeben).

Feed in Google SecOps konfigurieren, um Confluence-Logs aufzunehmen

  1. Rufen Sie die SIEM-Einstellungen > Feeds auf.
  2. Klicken Sie auf Neuen Feed hinzufügen.
  3. Geben Sie im Feld Feedname einen Namen für den Feed ein, z. B. Confluence Cloud Audit Logs.
  4. Wählen Sie Amazon S3 V2 als Quelltyp aus.
  5. Wählen Sie Atlassian Confluence als Logtyp aus.
  6. Klicken Sie auf Weiter.
  7. Geben Sie Werte für die folgenden Eingabeparameter an:
    • S3-URI: s3://confluence-audit-logs/confluence-audit/
    • Optionen zum Löschen von Quellen: Wählen Sie die gewünschte Option zum Löschen aus.
    • Maximales Dateialter: Dateien einschließen, die in den letzten Tagen geändert wurden. Der Standardwert ist 180 Tage.
    • Zugriffsschlüssel-ID: Der Nutzerzugriffsschlüssel mit Zugriff auf den S3-Bucket.
    • Geheimer Zugriffsschlüssel: Der geheime Schlüssel des Nutzers mit Zugriff auf den S3-Bucket.
    • Asset-Namespace: Der Asset-Namespace.
    • Aufnahmelabels: Das Label, das auf die Ereignisse aus diesem Feed angewendet wird.
  8. Klicken Sie auf Weiter.
  9. Prüfen Sie die neue Feedkonfiguration auf dem Bildschirm Abschließen und klicken Sie dann auf Senden.

UDM-Zuordnungstabelle

Logfeld UDM-Zuordnung Logik
Agent read_only_udm.network.http.user_agent Wert aus dem Feld „agent“.
app_protocol read_only_udm.network.application_protocol Abgeleitet aus dem Feld „app_protocol“. Wenn „app_protocol“ „HTTPS“, „HTTP“, „SSH“ oder „RDP“ enthält, wird das entsprechende Protokoll verwendet. Andernfalls wird standardmäßig „UNKNOWN_APPLICATION_PROTOCOL“ verwendet.
app_protocol read_only_udm.network.application_protocol_version Der Wert stammt aus dem Feld „app_protocol“.
auditType.action read_only_udm.security_result.action Abgeleitet vom Feld „auditType.action“. Wenn „auditType.action“ „successful“ enthält, wird der Wert auf „ALLOW“ gesetzt. Wenn der Wert „restricted“ enthält, wird er auf „BLOCK“ gesetzt.
auditType.action read_only_udm.security_result.summary Der Wert wird aus dem Feld „auditType.action“ übernommen, wenn „auditType“ nicht leer und „auditType_area“ „SECURITY“ ist.
auditType.actionI18nKey read_only_udm.metadata.product_event_type Der Wert wird aus dem Feld „auditType.actionI18nKey“ übernommen, wenn „auditType“ nicht leer ist.
auditType.area read_only_udm.security_result.detection_fields.value Der Wert wird aus dem Feld „auditType.area“ übernommen und dem Feld „value“ eines Erkennungsfelds zugewiesen, wobei das Feld „key“ auf „auditType area“ festgelegt ist. Diese Zuordnung erfolgt, wenn „auditType“ nicht leer ist.
auditType.category read_only_udm.security_result.category_details Der Wert wird aus dem Feld „auditType.category“ übernommen, wenn „auditType“ nicht leer ist.
auditType.categoryI18nKey read_only_udm.security_result.detection_fields.value Der Wert wird aus dem Feld „auditType.categoryI18nKey“ übernommen und dem Feld „value“ eines Erkennungsfelds zugewiesen, wobei das Feld „key“ auf „auditType categoryI18nKey“ gesetzt ist. Diese Zuordnung erfolgt, wenn „auditType“ nicht leer ist.
auditType.level read_only_udm.security_result.detection_fields.value Der Wert wird aus dem Feld „auditType.level“ übernommen und dem Feld „value“ eines Erkennungsfelds zugewiesen, wobei das Feld „key“ auf „auditType level“ festgelegt ist. Diese Zuordnung erfolgt, wenn „auditType“ nicht leer ist.
author.displayName read_only_udm.principal.user.user_display_name Der Wert stammt aus dem Feld „author.displayName“.
author.externalCollaborator read_only_udm.security_result.about.resource.attribute.labels.value Der Wert wird aus dem Feld „author.externalCollaborator“ übernommen und dem Feld „value“ eines Labels zugewiesen, dessen Feld „key“ auf „externalCollaborator“ festgelegt ist.
author.id read_only_udm.principal.user.userid Der Wert wird aus dem Feld „author.id“ übernommen, wenn „author.type“ „user“ und „principal_user_present“ „false“ ist.
author.isExternalCollaborator read_only_udm.security_result.about.resource.attribute.labels.value Der Wert wird aus dem Feld „author.isExternalCollaborator“ übernommen und dem Feld „value“ eines Labels zugewiesen, dessen Feld „key“ auf „isExternalCollaborator“ gesetzt ist.
author.name read_only_udm.principal.user.user_display_name Der Wert wird aus dem Feld „author.name“ übernommen, wenn „author.type“ „user“ und „principal_user_present“ „false“ ist.
bytes_in read_only_udm.network.received_bytes Wert aus dem Feld „bytes_in“, sofern es Ziffern enthält. Andernfalls wird standardmäßig 0 verwendet.
Kategorie read_only_udm.security_result.category_details Der Wert stammt aus dem Feld „category“.
changedValues read_only_udm.principal.resource.attribute.labels Durchläuft jedes Element in „changedValues“ und erstellt Labels mit Schlüsseln wie „changedValue[index][key]“ und Werten aus den entsprechenden Werten im Array „changedValues“.
Erstellungsdatum read_only_udm.metadata.event_timestamp Der Wert wird aus dem Feld „creationDate“ übernommen und als UNIX- oder UNIX_MS-Zeitstempel geparst.
extraAttributes read_only_udm.principal.resource.attribute.labels Durchläuft jedes Element in „extraAttributes“ und erstellt Labels mit Schlüsseln, die auf den Feldern „name“ und „nameI18nKey“ basieren, sowie Werten aus dem entsprechenden Feld „value“.
http_verb read_only_udm.network.http.method Der Wert stammt aus dem Feld „http_verb“.
ip read_only_udm.target.ip Wert aus dem Feld „ip“.
principal_host read_only_udm.principal.hostname Der Wert stammt aus dem Feld „principal_host“.
referral_url read_only_udm.network.http.referral_url Der Wert stammt aus dem Feld „referral_url“.
remoteAddress read_only_udm.principal.ip Der Wert wird aus dem Feld „remoteAddress“ übernommen und als IP-Adresse geparst.
response_code read_only_udm.network.http.response_code Der Wert stammt aus dem Feld „response_code“.
session_duration read_only_udm.additional.fields.value.string_value Der Wert wird aus dem Feld „session_duration“ übernommen und dem Feld „string_value“ eines Labels zugewiesen, wobei das Feld „key“ auf „Session Duration“ festgelegt ist.
source read_only_udm.principal.ip Der Wert wird aus dem Feld „source“ übernommen und als IP-Adresse geparst.
src_ip read_only_udm.principal.ip Der Wert wird aus dem Feld „src_ip“ übernommen, wenn „remoteAddress“ leer ist.
Zusammenfassung read_only_udm.security_result.summary Der Wert stammt aus dem Feld „Zusammenfassung“.
sysAdmin read_only_udm.security_result.about.resource.attribute.labels.value Der Wert wird aus dem Feld „sysAdmin“ übernommen und dem Feld „value“ eines Labels zugewiesen, dessen Feld „key“ auf „sysAdmin“ festgelegt ist.
superAdmin read_only_udm.security_result.about.resource.attribute.labels.value Der Wert wird aus dem Feld „superAdmin“ übernommen und dem Feld „value“ eines Labels zugewiesen, dessen Feld „key“ auf „superAdmin“ festgelegt ist.
target_url read_only_udm.target.url Der Wert stammt aus dem Feld „target_url“.
timestamp read_only_udm.metadata.event_timestamp Wert aus dem Feld „timestamp“, der als Datums- und Zeitstring geparst wird.
user_id read_only_udm.principal.user.userid Der Wert stammt aus dem Feld „user_id“.
read_only_udm.metadata.event_type Der Wert dieses Felds wird durch eine Reihe von Prüfungen bestimmt und ist standardmäßig auf „GENERIC_EVENT“ festgelegt. Der Wert wird auf bestimmte Werte wie „NETWORK_HTTP“, „USER_UNCATEGORIZED“ oder „STATUS_UPDATE“ festgelegt, je nachdem, ob und welche Inhalte in anderen Feldern wie „principal_host“, „user_id“, „has_principal“ und „author.type“ vorhanden sind.
read_only_udm.metadata.vendor_name Legen Sie diesen Wert auf „ATLASSIAN“ fest.
read_only_udm.metadata.product_name Legen Sie diesen Wert auf „CONFLUENCE“ fest.
read_only_udm.metadata.log_type Legen Sie diesen Wert auf „ATLASSIAN_CONFLUENCE“ fest.
read_only_udm.principal.user.user_display_name Der Wert dieses Felds kann je nach Kontext entweder aus „author.displayName“ oder aus „affectedObject.name“ stammen.
read_only_udm.target.process.pid Der Wert dieses Felds kann je nach Kontext entweder aus „principal_host“ oder „pid“ stammen.
read_only_udm.principal.resource.attribute.labels Dieses Feld wird mit verschiedenen Labels gefüllt, die aus Feldern wie „affectedObjects“, „changedValues“ und „extraAttributes“ abgeleitet werden. Die Schlüssel und Werte dieser Labels werden dynamisch basierend auf dem jeweiligen Inhalt dieser Felder generiert.

Benötigen Sie weitere Hilfe? Antworten von Community-Mitgliedern und Google SecOps-Experten erhalten