Azure API-Verwaltungslogs erfassen

Parserversion: 1.0

Unterstützt in:

In diesem Dokument wird beschrieben, wie Sie einen Azure Event Hub-Feed erstellen, um Azure API Management-Logs in Google Security Operations aufzunehmen.

Azure API Management ist eine hybride Multi-Cloud-Verwaltungsplattform für APIs in allen Umgebungen. Unternehmen können damit APIs für externe, Partner- und interne Entwickler veröffentlichen, um das Potenzial ihrer Daten und Dienste freizusetzen. Die API-Verwaltung bietet Tools für die API-Erkennung, Gateway-Funktionen, Sicherheitsrichtlinien, Analysen und die Interaktion mit Entwicklern. Die Diagnoseprotokolle enthalten detaillierte Informationen zu API-Gateway-Vorgängen, einschließlich Anfragen, Antworten und Fehlern.

Hinweis

Folgende Voraussetzungen müssen erfüllt sein:

  • Eine Google SecOps-Instanz
  • Privilegierter Zugriff auf das Microsoft Azure-Portal mit Berechtigungen für:
    • Event Hub-Namespaces erstellen
    • Event Hubs erstellen
    • Diagnoseeinstellungen für Azure API Management konfigurieren
    • Zugriffsrichtlinien verwalten
  • Eine vorhandene Azure API Management-Dienstinstanz

Event Hubs-Namespace erstellen

Ein Event Hubs-Namespace ist ein Verwaltungscontainer für einen oder mehrere Event Hubs.

  1. Suchen Sie im Azure-Portal nach Event Hubs.
  2. Klicken Sie auf + Erstellen.
  3. Geben Sie die folgenden Konfigurationsdetails an:

    Einstellung Wert
    Abo Azure-Abo auswählen
    Ressourcengruppe Vorhandenen auswählen oder neuen erstellen
    Name des Namespaces Geben Sie einen eindeutigen Namen ein, z. B. secops-apim-eventhub.
    Standort Wählen Sie die Region aus, z. B. East US.
    Preisstufe Standard (für die Produktion empfohlen)
    Durchsatzeinheiten Mit 1 beginnen, automatisches Aufblasen aktivieren (empfohlen)
  4. Klicken Sie auf Überprüfen + Erstellen.

  5. Prüfen Sie die Übersicht und klicken Sie auf Erstellen.

  6. Warten Sie, bis die Bereitstellung abgeschlossen ist (1–2 Minuten).

Event Hub erstellen

  1. Nachdem der Namespace bereitgestellt wurde, rufen Sie den Event Hubs-Namespace auf.
  2. Wählen Sie im linken Navigationsbereich unter Entitäten die Option Event Hubs aus.
  3. Klicken Sie auf + Event Hub.
  4. Geben Sie die folgenden Konfigurationsdetails an:

    Einstellung Wert
    Name Geben Sie einen eindeutigen Namen ein (z. B. apim-logs).
    Anzahl der Partitionen 40 (empfohlen für optimale Google SecOps-Skalierung)
    Aufbewahrung von Nachrichten 7 Tage (empfohlenes Minimum)
    Erfassen Deaktiviert (nicht für Google SecOps erforderlich)
  5. Klicken Sie auf Erstellen.

Event Hub-Verbindungsstring abrufen

Für Google SecOps ist ein Verbindungsstring erforderlich, um sich beim Event Hub zu authentifizieren.

  1. Rufen Sie den Event Hubs-Namespace auf.
  2. Wählen Sie im Navigationsmenü links unter Einstellungen die Option Richtlinien für gemeinsamen Zugriff aus.
  3. Klicken Sie auf die Standardrichtlinie RootManageSharedAccessKey.
  4. Kopieren Sie den Primärschlüssel des Verbindungsstrings.
  5. Speichern Sie diesen Verbindungsstring sicher.
  • Beispiel:

    Original: Endpoint=sb://secops-apim-eventhub.servicebus.windows.net/;SharedAccessKeyName=RootManageSharedAccessKey;SharedAccessKey=abc123==;EntityPath=apim-logs
    
    Remove EntityPath: Endpoint=sb://secops-apim-eventhub.servicebus.windows.net/;SharedAccessKeyName=RootManageSharedAccessKey;SharedAccessKey=abc123==
    

Option B: Verbindungsstring auf Event Hub-Ebene

  1. Rufen Sie den Event Hub (nicht den Namespace) auf.
  2. Wählen Sie im Navigationsmenü links unter Einstellungen die Option Richtlinien für gemeinsamen Zugriff aus.
  3. Klicken Sie auf + Hinzufügen, um eine neue Richtlinie zu erstellen.
  4. Geben Sie die folgenden Konfigurationsdetails an:
    • Richtlinienname: Geben Sie einen aussagekräftigen Namen ein, z. B. chronicle-read.
    • Berechtigungen: Wähle Nur lesen aus (schreibgeschützter Zugriff).
  5. Klicken Sie auf Erstellen.
  6. Klicken Sie auf die neu erstellte Richtlinie.
  7. Kopieren Sie den Connection string-primary key (Verbindungsstring – Primärschlüssel).
  8. Speichern Sie diesen Verbindungsstring sicher.

Azure API Management für das Streaming an Event Hub konfigurieren

  1. Suchen Sie im Azure-Portal nach API Management-Diensten.
  2. Wählen Sie Ihre API Management-Dienstinstanz aus.
  3. Wählen Sie in der linken Navigationsleiste unter Monitoring die Option Diagnoseeinstellungen aus.
  4. Klicken Sie auf + Diagnoseeinstellung hinzufügen.
  5. Geben Sie die folgenden Konfigurationsdetails an:
    • Name der Diagnoseeinstellung: Geben Sie einen aussagekräftigen Namen ein, z. B. apim-to-secops.
    • Wählen Sie im Abschnitt Logs die folgenden Kategorien aus:
      • GatewayLogs: API-Gateway-Anfrage- und ‑Antwortlogs
      • WebSocketConnectionLogs: WebSocket-Verbindungsprotokolle (falls zutreffend)
      • DeveloperPortalAuditLogs: Audit-Logs für das Entwicklerportal (falls zutreffend)
      • GatewayLlmLogs: Gateway-Logs für generative KI (falls zutreffend)
      • GatewayMCPLogs: Server-Logs des Model Context Protocol (MCP) (falls zutreffend)
    • Wählen Sie im Abschnitt Zieldetails das Kästchen An einen Event Hub streamen aus.
    • Abo: Wählen Sie das Abo aus, das Ihren Event Hub-Namespace enthält.
    • Event Hubs-Namespace: Wählen Sie den Namespace aus, den Sie zuvor erstellt haben (z. B. secops-apim-eventhub).
    • Event Hub-Name: Wählen Sie den von Ihnen erstellten Event Hub aus (z. B. apim-logs).
    • Event Hub-Richtlinienname: Wählen Sie RootManageSharedAccessKey oder eine benutzerdefinierte Richtlinie mit Send-Berechtigungen aus.
  6. Klicken Sie auf Speichern.

(Optional) Azure Blob Storage für Checkpointing konfigurieren

Google SecOps kann Azure Blob Storage verwenden, um Event Hub-Prüfpunkte zu speichern, mit denen verfolgt wird, welche Ereignisse verarbeitet wurden. So wird verhindert, dass Daten doppelt aufgenommen werden, wenn der Feed vorübergehend unterbrochen wird.

Speicherkonto für die Prüfpunkterstellung erstellen

  1. Suchen Sie im Azure-Portal nach Speicherkonten.
  2. Klicken Sie auf + Erstellen.
  3. Geben Sie die folgenden Konfigurationsdetails an:

    Einstellung Wert
    Abo Azure-Abo auswählen
    Ressourcengruppe Verwenden Sie dieselbe Ressourcengruppe wie Event Hub.
    Name des Speicherkontos Geben Sie einen eindeutigen Namen ein (z. B. secopsapimcheckpoint).
    Region Dieselbe Region wie Event Hub
    Leistung Standard
    Redundanz LRS (Locally Redundant Storage)
  4. Klicken Sie auf Überprüfen + Erstellen.

  5. Klicken Sie auf Erstellen.

Blob-Container erstellen

  1. Rufen Sie das Storage-Konto auf, das Sie gerade erstellt haben.
  2. Wählen Sie im linken Navigationsbereich unter Datenspeicher die Option Container aus.
  3. Klicken Sie auf + Container.
  4. Geben Sie die folgenden Konfigurationsdetails an:
    • Name: Geben Sie checkpoints ein.
    • Öffentliche Zugriffsebene: Privat (kein anonymer Zugriff)
  5. Klicken Sie auf Erstellen.

Anmeldedaten für das Speicherkonto abrufen

  1. Wählen Sie im Speicherkonto unter Sicherheit + Netzwerk die Option Zugriffsschlüssel aus.
  2. Klicken Sie auf Schlüssel anzeigen.
  3. Kopieren und speichern:
    • Storage-Kontoname: Der Name Ihres Storage-Kontos.
    • Schlüssel 1: Der Wert des Zugriffsschlüssels

Sie geben diese Werte beim Erstellen des Google SecOps-Feeds an.

(Optional) Dedizierte Nutzergruppe erstellen

Standardmäßig stellt Event Hub eine Nutzergruppe namens $Default bereit. Für Produktionsumgebungen wird empfohlen, eine dedizierte Consumer-Gruppe für Google SecOps zu erstellen.

  1. Rufen Sie den Event Hub (nicht den Namespace) auf.
  2. Wählen Sie im linken Navigationsbereich unter Einheiten die Option Verbrauchergruppen aus.
  3. Klicken Sie auf + Verbrauchergruppe.
  4. Geben Sie die folgenden Konfigurationsdetails an:
    • Name: Geben Sie einen aussagekräftigen Namen ein, z. B. chronicle.
  5. Klicken Sie auf Erstellen.

Feed in Google SecOps konfigurieren, um Azure API Management-Logs aufzunehmen

  1. Rufen Sie die SIEM-Einstellungen > Feeds auf.
  2. Klicken Sie auf Neuen Feed hinzufügen.
  3. Klicken Sie auf der nächsten Seite auf Einen einzelnen Feed konfigurieren.
  4. Geben Sie im Feld Feedname einen Namen für den Feed ein, z. B. Azure API Management Logs.
  5. Wählen Sie Microsoft Azure Event Hub als Quelltyp aus.
  6. Wählen Sie Azure API Management als Log type (Protokolltyp) aus.
  7. Klicken Sie auf Weiter.
  8. Geben Sie Werte für die folgenden Eingabeparameter an:

    • Event Hub-Verbindungsstring: Geben Sie den Event Hub-Verbindungsstring ein, den Sie zuvor erfasst haben.

    • Wenn Sie einen Verbindungsstring auf Namespace-Ebene verwenden:

      • Entfernen Sie den Parameter EntityPath.
      • Im nächsten Feld müssen Sie außerdem den Event Hub-Namen angeben.
    • Wenn Sie eine Verbindungszeichenfolge auf Event Hub-Ebene verwenden:

      • Verwenden Sie den Verbindungsstring unverändert (einschließlich EntityPath).
      • Das Feld Event Hub-Name kann leer gelassen werden.
    • Event Hub-Name: Geben Sie den Event Hub-Namen ein (z. B. apim-logs).

      • Erforderlich, wenn ein Verbindungsstring auf Namespace-Ebene verwendet wird.
      • Optional, wenn eine Verbindungszeichenfolge auf Event Hub-Ebene verwendet wird.
    • Nutzergruppe (optional): Geben Sie den Namen der Nutzergruppe ein.

      • Lassen Sie das Feld leer, um die Standardnutzergruppe $Default zu verwenden.
      • Wenn Sie eine spezielle Nutzergruppe erstellt haben, geben Sie ihren Namen ein (z. B. chronicle).
    • Blob-Speichercontainername (optional): Geben Sie für die Prüfpunkterstellung den Containernamen ein (z. B. checkpoints).

    Wenn Sie Blob-Speicher für Prüfpunkte bereitstellen:

    • Azure-Speicherkontoname: Geben Sie den Speicherkontonamen aus der Prüfpunktkonfiguration ein.
    • Azure-Speicherkontoschlüssel: Geben Sie den Zugriffsschlüssel aus der Prüfpunktkonfiguration ein.

    • Asset-Namespace: Der Asset-Namespace

    • Labels für Datenaufnahme: Das Label, das auf die Ereignisse aus diesem Feed angewendet werden soll

  9. Klicken Sie auf Weiter.

  10. Prüfen Sie die neue Feedkonfiguration auf dem Bildschirm Abschließen und klicken Sie dann auf Senden.

Weitere Informationen zu Google SecOps-Feeds finden Sie in der Google SecOps-Feed-Dokumentation.

UDM-Zuordnungstabelle

Logfeld UDM-Zuordnung Logik
Level_label additional.fields Zusammengeführt
Sku_label additional.fields Zusammengeführt
apiId_label additional.fields Zusammengeführt
apiRevision_label additional.fields Zusammengeführt
apimSubscriptionId_label additional.fields Zusammengeführt
backendMethod_label additional.fields Zusammengeführt
backendProtocol_label additional.fields Zusammengeführt
backendResponseCode_label additional.fields Zusammengeführt
backendTime_label additional.fields Zusammengeführt
cache_label additional.fields Zusammengeführt
clientProtocol_label additional.fields Zusammengeführt
durationMs_label additional.fields Zusammengeführt
eventName_label additional.fields Zusammengeführt
eventid_label additional.fields Zusammengeführt
functionInvocationId_label additional.fields Zusammengeführt
functionName_label additional.fields Zusammengeführt
hostInstanceId_label additional.fields Zusammengeführt
hostVersion_label additional.fields Zusammengeführt
isRequestSuccess_label additional.fields Zusammengeführt
operationId_label additional.fields Zusammengeführt
productId_label additional.fields Zusammengeführt
properties.message metadata.description Direkt zugeordnet
time metadata.event_timestamp Als ISO8601 geparst
has_principal metadata.event_type Zugeordnet: true → STATUS_UPDATE
operationName metadata.product_event_type Direkt zugeordnet
DeploymentVersion metadata.product_version Direkt zugeordnet
properties.method network.http.method Direkt zugeordnet
properties.responseCode network.http.response_code Direkt zugeordnet
properties.responseSize network.received_bytes Direkt zugeordnet
properties.requestSize network.sent_bytes Direkt zugeordnet
correlationId network.session_id Direkt zugeordnet
properties.clientTlsCipherSuite network.tls.cipher Direkt zugeordnet
properties.clientTlsVersion network.tls.version Direkt zugeordnet
callerIpAddress principal.asset.ip Zusammengeführt
callerIpAddress principal.ip Zusammengeführt
location principal.location.name Direkt zugeordnet
properties.url principal.url Direkt zugeordnet
properties.userId principal.user.userid Direkt zugeordnet
action security_result.action Zusammengeführt
resultType security_result.action Zugeordnet: Succeeded → action
category security_result.category_details Zusammengeführt
properties.category security_result.category_details Zusammengeführt
level security_result.severity Direkt zugeordnet
resultType security_result.summary Direkt zugeordnet
properties.appName target.application Direkt zugeordnet
properties.processId target.process.pid Direkt zugeordnet
roleInstance_label target.resource.attribute.labels Zusammengeführt
resourceId target.resource.product_object_id Direkt zugeordnet
properties.backendUrl target.url Direkt zugeordnet
– metadata.event_type Konstante: GENERIC_EVENT
– metadata.product_name Konstante: AZURE API MANAGEMENT
– metadata.vendor_name Konstante: AZURE_API_MANAGEMENT
– network.tls.version_protocol Konstante: HTTP

Änderungsprotokoll

Änderungsprotokoll für diesen Parser ansehen

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