llm-integration.eu

Claude Compliance API: Audit-Logs exportieren 2026

Was die Claude Compliance API exportiert, wie Audit-Logs ins SIEM kommen und was CloudTrail, Bedrock Invocation Logging und Vertex Audit Logs stattdessen erfassen.

Aktualisiert 11 Min. LesezeitFakten geprüft am 1. Oktober 2026

TL;DR

Die Claude Compliance API ist eine REST-Schnittstelle unter api.anthropic.com/v1/compliance/* für Enterprise- und Claude-Platform-Organisationen. Sie hält Audit-Ereignisse 6 Jahre vor und liefert mit passendem Schlüssel Chats, Dateien und Claude-Code-Transkripte. Claude über Bedrock oder Vertex deckt sie nicht ab. Dort brauchen Sie CloudTrail, Invocation Logging und Cloud Audit Logs.

Was exportiert die Claude Compliance API?

Die Claude Compliance API liefert drei Arten von Daten: einen Activity Feed mit wer, was, wann; die Inhalte von Chats, Dateien und Projekten aus claude.ai; und Transkripte von Cowork- und Claude-Code-Sessions. Der Activity Feed allein enthält nie Prompt-Texte. Inhalte brauchen einen eigenen Scope und gibt es nur in Claude-Enterprise-Mandanten.

Anthropic beschreibt die API in der Compliance-API-Übersicht als programmatischen Zugriff auf Aktivitäten, Chats, Dateien, Projekte, Sessions und Nutzer der Organisation. Zwei Schlüsseltypen öffnen sie, und sie sind nicht austauschbar:

Schlüssel Angelegt in Reichweite Präfix
Compliance Access Key claude.ai, Organisationseinstellungen, API Alle Compliance-Endpunkte, je nach Scope sk-ant-api01-
Admin-API-Key Claude Console, Settings, Admin keys Nur Activity Feed sk-ant-admin01-
Normaler Claude-API-Key Claude Console, API keys Kein Compliance-Endpunkt sk-ant-api03-

Die Scopes werden beim Anlegen festgelegt und lassen sich danach nicht ändern: read:compliance_activities, read:compliance_user_data, delete:compliance_user_data und read:compliance_org_data. Die Einrichtungsanleitung warnt ausdrücklich: Ein Schlüssel mit read:compliance_user_data liest jeden Chat, jede Datei und jedes Session-Transkript in allen verknüpften Organisationen. Behandeln Sie ihn wie ein Datenbank-Passwort der Produktion. Anthropic empfiehlt: Wer lesen und löschen muss, nimmt zwei getrennte Schlüssel, damit ein abgeflossener Lese-Schlüssel nichts löschen kann.

Wer die API einschaltet, gehört in Ihre Rollenplanung. Im Claude-Enterprise-Mandanten darf das nur der Primary Owner, und die Aktivierung gilt für alle verknüpften Organisationen. Eine eigenständige Claude-Console-Organisation schaltet sie unter Settings, Security ein und bekommt nur den Activity Feed. Der Help-Center-Artikel ergänzt: Public-Sector-Organisationen sind ausgenommen, Deployments über Amazon Bedrock und Google Vertex AI ebenfalls.

Was fehlt, ist für den Datenschutzbeauftragten so wichtig wie der Inhalt. Die Compliance-API-FAQ nennt die Lücken: keine Prompts oder Antworten aus Claude-API-Workloads mit API-Key, keine Claude-Code-Sessions über Bedrock, Google Cloud oder Foundry, keine Claude-Code-Cloud-Sessions, keine Thinking-Blöcke und nichts, was Nutzer oder Ihre Löschfrist schon entfernt haben. Seit dem 24. September 2026 tragen Datei- und Artefakt-Ereignisse keinen Dateinamen mehr; den holen Sie per ID über die Inhalts-Endpunkte.

Den älteren CSV-Export gibt es weiter. Der Audit-Log-Artikel beschränkt ihn auf Enterprise-Owner, die letzten 180 Tage und 27 Ereignistypen, der Download-Link gilt 24 Stunden, Chat-Titel und Inhalte fehlen. Für eine Stichprobe reicht das. Als Nachweis gegenüber Aufsicht oder Betriebsrat taugt es nicht.

Wie ziehen Sie Claude-Audit-Logs per API ab?

Sie holen die Audit-Logs mit GET /v1/compliance/activities, dem Header x-api-key und anthropic-version: 2023-06-01. Ereignisse sind nach 1 Minute abfragbar und bleiben 6 Jahre gespeichert. Die Aufzeichnung beginnt erst mit der Aktivierung, also schalten Sie die API vor dem ersten Login ein. Jede Abschaltung erzeugt eine Lücke, die sich nicht nachträglich füllen lässt.

Die Einrichtung in fünf Schritten:

  1. Der Primary Owner aktiviert die Compliance API in claude.ai unter Organisationseinstellungen, API.
  2. Legen Sie für die SIEM-Strecke einen Schlüssel nur mit read:compliance_activities an. Inhalts- und Lösch-Scopes kommen auf eigene Schlüssel.
  3. Legen Sie den Schlüssel im Secrets Manager ab. Er wird einmal angezeigt und läuft nicht von selbst ab.
  4. Prüfen Sie mit einem ersten Aufruf, dass der Scope greift, und bauen Sie dann den zeitgesteuerten Abruf.
  5. Übernehmen Sie auch die Ereignisse compliance_api_accessed, damit das SIEM festhält, wer Compliance-Daten abgefragt hat.

Der kleinste funktionierende Aufruf aus der Dokumentation:

curl --fail-with-body -sS "https://api.anthropic.com/v1/compliance/activities?limit=1" --header "x-api-key: $ANTHROPIC_COMPLIANCE_ACCESS_KEY" --header "anthropic-version: 2023-06-01"

Für den regelmäßigen Job empfehlen wir das Zeitfenster-Muster aus Anthropics Integrationsleitfaden: feste Grenzen created_at.gte und created_at.lt, Blättern innerhalb des Fensters mit after_id, eine kleine Überlappung und Deduplizierung über die Ereignis-id. Der Worker bleibt damit zustandslos.

import os, json, datetime as dt, requests

URL = "https://api.anthropic.com/v1/compliance/activities"
HEADERS = {
    "x-api-key": os.environ["ANTHROPIC_COMPLIANCE_ACCESS_KEY"],
    "anthropic-version": "2023-06-01",
}

def pull_window(gte: str, lt: str) -> None:
    params = {"created_at.gte": gte, "created_at.lt": lt, "limit": 5000}
    while True:
        r = requests.get(URL, headers=HEADERS, params=params, timeout=60)
        r.raise_for_status()
        page = r.json()
        for activity in page["data"]:
            print(json.dumps(activity))  # eine JSON-Zeile pro Ereignis für den SIEM-Forwarder
        if not page["has_more"]:
            break
        params["after_id"] = page["last_id"]

fmt = "%Y-%m-%dT%H:%M:%SZ"
lt = dt.datetime.now(dt.timezone.utc).replace(second=0, microsecond=0) - dt.timedelta(minutes=5)
gte = lt - dt.timedelta(minutes=70)  # 60 Minuten Fenster plus 10 Minuten Überlappung
pull_window(gte.strftime(fmt), lt.strftime(fmt))

Halten Sie die Obergrenze mindestens 1 Minute in der Vergangenheit. Anthropic warnt, dass ein created_at.lt zu nah an der Gegenwart spät indizierte Ereignisse dauerhaft verliert. Eine Seite fasst höchstens 5.000 Ereignisse, und alle /v1/compliance/*-Aufrufe teilen sich 600 Anfragen pro Minute je Parent-Organisation. Ein stündlicher Job hat damit viel Luft. Zieht ein zweites Team mit eigenem Schlüssel Inhalte ab, zählt das gegen dasselbe Budget.

Wie kommen Claude-Audit-Logs ins SIEM?

Schreiben Sie jedes Ereignis als eine JSON-Zeile ins SIEM und verknüpfen Sie es über actor.user_id, nicht über die E-Mail-Adresse. Der Feed liefert mindestens einmal, also deduplizieren Sie über id. Für E-Discovery archivieren Sie Inhalte gleich beim Abruf, denn gelöschte Chats und abgelaufene Transkripte lassen sich später nicht mehr holen.

Die Join-Schlüssel, die Anthropic für Splunk, Datadog, Microsoft Sentinel und ähnliche Systeme nennt:

Feld der Compliance API Verknüpfen mit Hinweis
actor.user_id Nutzer-ID im Identity Provider Stabil, auch bei E-Mail-Wechsel; Primärschlüssel
actor.email_address Verzeichnis-E-Mail Nur ohne stabile ID
actor.ip_address VPN-, Proxy- und Endpoint-Logs Fehlt bei manchen Akteurstypen
actor.user_agent Geräteinventar Zeigt die Client-App
created_at Jede Quelle Zeitfenster-Korrelation

Prüfen Sie vorher actor.type. Ein scim_directory_sync_actor hat keine IP-Adresse, ein anthropic_actor keine E-Mail. Außerdem zählen claude_chat_viewed und verwandte Ereignisse App-Ladevorgänge, keine menschlichen Lesezugriffe. Eine Regel wie “Nutzer hat 400 Chats gelesen” auf dieser Basis führt zu Fehlalarmen und im Zweifel zu einem unnötigen Konflikt mit dem Betriebsrat.

Für einen prüfbaren Export protokollieren Sie Start-Cursor, letztes last_id, Anzahl der Datensätze, Laufzeit und die request-id der letzten Seite. Die Listen-Endpunkte liefern weder Gesamtzahl noch Prüfsumme, dieses Laufprotokoll ist also Ihr Vollständigkeitsnachweis. Ein Hash pro Datensatz sichert die Beweiskette.

Die Aufbewahrung bestimmt, was Sie selbst archivieren müssen:

Daten Bei Anthropic gespeichert Ihre Aufgabe
Activity Feed 6 Jahre Nur archivieren, wenn Ihre Frist länger ist
Chats, Dateien, Projekte Nach Ihrer claude.ai-Löschfrist (standardmäßig unbegrenzt) Vor Löschung durch Frist oder Nutzer exportieren
Lokale Session-Transkripte (Claude Code, Cowork) 6 Jahre oder Ihre eigene Frist; 30 Tage mit HIPAA-Readiness Exportieren, wenn Ihr Legal Hold länger läuft
Per API endgültig gelöschte Inhalte Nicht gespeichert Vor jedem DLP-Löschlauf sichern

Was protokollieren Bedrock und Vertex stattdessen?

Bei Bedrock und Vertex sieht die Compliance API nichts, Ihr Audit-Trail sind dann die Cloud-Logs. CloudTrail erfasst jeden Bedrock-Aufruf von InvokeModel und Converse als Management Event mit Aufrufer und Quell-IP, aber ohne Prompt. Für Prompts und Antworten brauchen Sie Bedrock Model Invocation Logging oder Vertex Request-Response-Logging, beide standardmäßig aus.

Quelle Erfasst Prompt-Inhalt Standard Aufbewahrung
Claude Compliance API Aktivität, mit Inhalts-Scope auch Chats und Sessions Nur über Inhalts-Endpunkte Aus bis zur Aktivierung 6 Jahre für Aktivität
AWS CloudTrail (Bedrock) Aufrufer, Zeit, IP, Modell-ID Nein An, Event history 90 Tage Event history; Trail für länger
Bedrock Model Invocation Logging Vollständige Anfrage, Antwort, Token, identity.arn Ja, bis 100 KB inline Aus Bis Sie die Konfiguration löschen
Vertex Admin Activity Logs Konfigurationsänderungen Nein Immer an 400 Tage (_Required)
Vertex Data Access Logs Lesezugriffe und Vorhersagen, inkl. endpoints.rawPredict Nicht als Inhalt dokumentiert Aus 30 Tage (_Default), 1 bis 3650 einstellbar
Vertex Request-Response-Logging Stichproben von Anfragen und Antworten in BigQuery Ja Aus, Pre-GA Ihre BigQuery-Tabelle

Die Bedrock-Seite zu CloudTrail bestätigt, dass InvokeModel, InvokeModelWithResponseStream, Converse und ConverseStream Management Events sind, die CloudTrail standardmäßig protokolliert. Der dokumentierte Beispieleintrag zeigt modelId, IAM-Identität, sourceIPAddress und User Agent, responseElements ist null. Laut lookup-events-Referenz reicht die Abfrage 90 Tage zurück, erlaubt ein Attribut pro Aufruf und zwei Anfragen pro Sekunde je Konto und Region:

aws cloudtrail lookup-events --region eu-central-1 --lookup-attributes AttributeKey=EventName,AttributeValue=InvokeModel --start-time 2026-10-01T00:00:00Z --max-items 50 --query "Events[].{time:EventTime,user:Username,event:EventName}"

Führen Sie das für jede Region aus, aus der Sie Claude aufrufen. Fürs SIEM pollen Sie lookup-events nicht, sondern legen einen Trail nach S3 an, den das SIEM liest.

Model Invocation Logging beantwortet auf Bedrock die Frage, was gesagt wurde. Es schreibt nach S3 oder CloudWatch Logs im selben Konto und in derselben Region, speichert Inhalte bis 100 KB direkt im Eintrag und größere als eigene S3-Objekte. Zwei Grenzen zählen für EU-Setups: Erfasst wird nur bedrock-runtime, nicht bedrock-mantle, und die Logs bleiben liegen, bis Sie die Konfiguration löschen. Die Lifecycle-Regel für Ihr Löschkonzept setzen Sie selbst. Region und EU-Profil dahinter beschreibt unser Leitfaden zu Claude auf Bedrock in Frankfurt.

Auf Google Cloud führt das Vertex Audit Logging endpoints.rawPredict unter Data Access (DATA_READ), und Data-Access-Logs werden erst nach expliziter Aktivierung geschrieben. Claude auf Vertex nutzt rawPredict und streamRawPredict, und das Request-Response-Logging führt Anthropic Claude unter den unterstützten Partnermodellen, konfigurierbar nur per REST, mit einer Sampling-Rate zwischen 0 und 1. Die Rolle Logs Viewer sieht Data-Access-Logs im Bucket _Default nicht; das Dienstkonto Ihres SIEM braucht Private Logs Viewer. Die regionale Einrichtung steht in unserem Leitfaden zu Claude auf Vertex AI in Europa.

Welche DSGVO- und AI-Act-Pflichten erfüllen diese Logs?

Logs decken zwei DSGVO-Pflichten direkt ab: die Rechenschaftspflicht nach Art. 5 Abs. 2 und das Verfahren zur regelmäßigen Überprüfung der Sicherheit nach Art. 32 Abs. 1 lit. d. Die Protokollpflicht der KI-Verordnung in Art. 26 Abs. 6 trifft nur Betreiber von Hochrisiko-Systemen, für Anhang III ab 2. Dezember 2027. Für den normalen Claude-Einsatz ist die DSGVO der eigentliche Grund.

Nach Art. 5 Abs. 2 DSGVO muss der Verantwortliche die Einhaltung der Grundsätze nachweisen können. Ein Activity-Feed-Export, der zeigt, wer auf welches Projekt zugegriffen hat, plus das Protokoll Ihrer Schlüsselnutzung, ist genau dieser Nachweis. Art. 32 Abs. 1 lit. d verlangt ein Verfahren zur regelmäßigen Überprüfung der technischen und organisatorischen Maßnahmen; die SIEM-Regeln auf diesen Ereignissen gehören dazu. Und im Verzeichnis von Verarbeitungstätigkeiten nach Art. 30 sollte Ihr Claude-Eintrag jeden Log-Speicher nennen, denn jeder enthält personenbezogene Daten.

Das gilt auch in die andere Richtung. Logs mit Prompt-Inhalten sind personenbezogene Daten, für Ihr Archiv gelten also Datenminimierung (Art. 5 Abs. 1 lit. c) und Speicherbegrenzung (lit. e). Sechs Jahre Metadaten bei Anthropic heißen nicht sechs Jahre Prompt-Inhalte in Ihrem S3-Bucket. Schreiben Sie pro Quelle eine Frist in Ihr Löschkonzept und klären Sie Auswertungen von Mitarbeiter-Logs früh mit dem Betriebsrat.

Die KI-Verordnung verpflichtet laut AI Act Service Desk der Kommission Betreiber von Hochrisiko-KI-Systemen, automatisch erzeugte Protokolle aufzubewahren, soweit sie diese kontrollieren, und zwar mindestens sechs Monate. Art. 113 setzt Kapitel III Abschnitte 1 bis 3 auf den 2. Dezember 2027 (Anhang III) und den 2. August 2028 (Anhang I). Ein interner Claude-Chat zum Formulieren ist nicht hochriskant. Ein Claude-Workflow, der Bewerbungen vorsortiert, wahrscheinlich schon. Die Einordnung beschreibt unser Artikel zu den AI-Act-Pflichten für Unternehmen mit LLMs.

Selbst betreiben oder auslagern?

Wer die Strecke selbst betreibt, verantwortet Schlüssel, Scheduler, SIEM-Parser, Archiv und Löschkonzept. Das System ist klein, fällt aber still aus, wenn niemand hinschaut. Auslagern lohnt sich, wenn kein Security-Team rund um die Uhr erreichbar ist. Schlüsselhoheit und Archivstandort sollten in jedem Fall bei Ihnen bleiben.

Woraus die interne Arbeit besteht, als unsere Einschätzung, nicht als belegte Zahl:

  • Plattform- oder Security-Engineer: Abruf bauen, Schlüssel rotieren, Parser anpassen, wenn Anthropic neue Ereignistypen einführt (die Doku verlangt, unbekannte Typen durchzureichen).
  • SOC-Analyst: Alarme auf Admin-Änderungen, neue Schlüssel, compliance_api_accessed und Exporte justieren.
  • Datenschutzbeauftragter oder Rechtsabteilung: Fristen je Quelle festlegen, Löschläufe freigeben, Auskunftsersuchen und E-Discovery beantworten.
  • Wiederkehrende Prüfungen: monatlicher Vollständigkeitsnachweis, quartalsweise Schlüsselrotation, Test, ob die Compliance API noch aktiv ist.

Ein Managed-Security- oder Managed-Claude-Dienstleister passt, wenn Ihr SIEM ohnehin von einem MSSP betrieben wird oder intern niemand Rufbereitschaft für eine gestörte Pipeline übernehmen kann. Für E-Discovery selbst passt er weniger: Legal Holds und Inhaltsexporte berühren vertrauliches Material, das wir bei Rechtsabteilung und einem internen Admin lassen würden.

Wenn Sie auslagern, gehören diese Punkte in den Vertrag:

  1. Zugriffsmodell: Der Dienstleister erhält nur einen Activity-Feed-Schlüssel, nie delete:compliance_user_data; Inhalts-Scope nur auf dokumentierte Anforderung.
  2. AVV nach Art. 28 DSGVO, aktuelle Liste der Unterauftragsverarbeiter und Speicherort seiner Logs.
  3. SLA für die Erkennung von Pipeline-Ausfällen und für E-Discovery-Anfragen, in Stunden.
  4. Nachweise: monatliche Laufprotokolle mit Cursor, Anzahl und Request-ID wie oben beschrieben.
  5. Exit: Das Archiv liegt in Ihrem Konto (S3, BigQuery oder SIEM-Mandant), damit ein Anbieterwechsel nicht sechs Jahre Historie kostet.

Was mit Firmendaten in den einzelnen Claude-Tarifen passiert, ordnet unser Artikel zu Claude Datenschutz im Unternehmen ein.

FAQ

Enthält die Claude Compliance API die Prompts?

Der Activity Feed nicht. Prompts und Antworten kommen über die Chat-, Nachrichten- und Session-Endpunkte. Die brauchen einen Compliance Access Key mit read:compliance_user_data und funktionieren nur für Claude-Enterprise-Inhalte. Prompts, die per API-Key über die Claude API laufen, gibt die Schnittstelle nie heraus.

Deckt die Compliance API Claude auf Bedrock oder Vertex ab?

Nein. Anthropics Help Center nimmt Amazon Bedrock und Google Vertex AI aus, die FAQ zusätzlich Claude Code über Bedrock, Google Cloud oder Foundry. Auf AWS nutzen Sie CloudTrail und Invocation Logging, auf Google Cloud Cloud Audit Logs und Request-Response-Logging.

Compliance API oder CSV-Export der Audit-Logs: was nehmen?

Die Compliance API. Der CSV-Export umfasst 180 Tage und 27 Ereignistypen ohne Chat-Inhalte, der Download-Link verfällt nach 24 Stunden. Die API hält Aktivitäten 6 Jahre vor, filtert nach Typ und Zeitraum und beliefert ein SIEM automatisch.

Was kostet das Audit-Logging für Claude?

Die Seiten zur Compliance API, die wir gelesen haben, nennen keine eigene Gebühr; fragen Sie Ihr Anthropic-Account-Team, bevor Sie budgetieren. Auf AWS kosten CloudTrail Data Events extra, Invocation Logs verursachen S3- oder CloudWatch-Speicherkosten. Auf Google Cloud senkt die Sampling-Rate des Request-Response-Loggings die Speicherkosten.

Wie lange müssen Claude-Logs aufbewahrt werden?

Eine Einheitsfrist gibt es nicht. Die KI-Verordnung verlangt mindestens sechs Monate nur von Hochrisiko-Betreibern. Die DSGVO verlangt, personenbezogene Daten nicht länger als nötig zu speichern. Anthropic hält Aktivitäten 6 Jahre, CloudTrail Event history 90 Tage, Googles Bucket _Required 400 Tage.

Wer darf die Claude Compliance API aktivieren?

Im Claude-Enterprise-Mandanten nur der Primary Owner, in claude.ai unter Organisationseinstellungen, API. Ein Organization Owner kann Schlüssel anlegen, die auf seine eigene Organisation beschränkt sind. Eine eigenständige Claude-Console-Organisation aktiviert ein Admin unter Settings, Security.

Quellen

  1. Claude Platform Docs: Compliance API (1. Oktober 2026)
  2. Claude Platform Docs: Compliance API einrichten (1. Oktober 2026)
  3. Claude Platform Docs: Activity Feed abfragen (1. Oktober 2026)
  4. Claude Platform Docs: Integration planen (1. Oktober 2026)
  5. Claude Platform Docs: Compliance API FAQ (1. Oktober 2026)
  6. Claude Help Center: Access the Compliance API (1. Oktober 2026)
  7. Claude Help Center: Access audit logs (1. Oktober 2026)
  8. AWS Docs: Bedrock Model Invocation Logging (1. Oktober 2026)
  9. AWS Docs: Bedrock-API-Aufrufe mit CloudTrail überwachen (1. Oktober 2026)
  10. AWS Docs: CloudTrail lookup-events mit der AWS CLI (1. Oktober 2026)
  11. Google Cloud Docs: Agent Platform Audit Logging (1. Oktober 2026)
  12. Google Cloud Docs: Request-Response-Logging (1. Oktober 2026)
  13. Google Cloud Docs: Logging-Kontingente und Aufbewahrung (1. Oktober 2026)
  14. AI Act Service Desk: Artikel 26 (1. Oktober 2026)
  15. AI Act Service Desk: Artikel 113 (1. Oktober 2026)
  16. EUR-Lex: DSGVO (Verordnung 2016/679) (1. Oktober 2026)

Weiterführende Guides