Kostenlos testen7 Tage Log-Aufbewahrung
Zurück zum Enterprise-Überblick
Agenten-Audit-Trail

Jede Agenten-Aktion, aktenkundig.

Wenn ein KI-Agent Code schreibt, Befehle ausführt und Ihre Repos berührt, ist „die KI war's“ keine Antwort, die Ihr Auditor akzeptieren wird. Bromure macht jede Sitzung zu einem strukturierten, attribuierbaren Datensatz: wer welchen Agenten ausgeführt hat, wogegen und was genau er berührt hat.

Das Problem

KI-geschriebener Code ohne Chain of Custody

Ein wachsender Anteil Ihrer Codebasis wird jetzt von Agenten entworfen — und die Spur ist dünn. Welcher Engineer startete die Sitzung? Welches Modell? Welche Dateien hat der Agent gelesen, geändert oder gelöscht? Welche Befehle hat er ausgeführt, und gegen welche Systeme? Für die meisten Teams ist die ehrliche Antwort ein Schulterzucken, und ein Schulterzucken übersteht kein SOC 2-Audit, keinen Sicherheitsvorfall und keine Frage eines Regulators.

Der Agent operiert auf dem Laptop des Engineers, unter dem Konto des Engineers, mit dem Zugriff des Engineers. Von außen ist der Commit eines Agenten von dem eines Menschen ununterscheidbar — bis etwas schiefgeht und Sie genau rekonstruieren müssen, was passiert ist, und es nichts gibt, woraus man es rekonstruieren könnte.

Bromures Antwort

Jede Sitzung ist ein manipulationssicherer Datensatz

Weil der Agent in einer Bromure-VM läuft, wird jede Aktion an der Grenze erfasst: die Dateien, die er erstellte, modifizierte und löschte, mit Diffs; jeder Shell-Befehl, den er ausführte; jedes Tool, das er aufrief; jeder Endpunkt, den er erreichte — alles an die Identität des Engineers und das verwendete Modell gebunden, zentral aufbewahrt.

Der vollständige Dialog wird ebenfalls archiviert — Prompts, Modellantworten, Tool-Aufrufe, das gesamte Transkript — in der Cloud aufbewahrt, von Security prüfbar, von der Engineering-Führung stichprobenartig einsehbar und in dasselbe Archiv exportierbar, das Sie bereits für E-Mail- und Chat-Aufbewahrung befüllen. KI-gestützte Arbeit wird so auditierbar wie alles andere, was Ihre Organisation tut.

So funktioniert es

Jede Datei, die der Agent berührt hat

Pro Sitzung, pro Repo, pro Engineer — die exakte Menge erstellter, modifizierter oder gelöschter Dateien, mit Diffs, gebunden an den, der die Sitzung startete, und das verwendete Modell.

Jeder Befehl und Aufruf

Jeder Shell-Befehl, den der Agent in der VM ausführte, jede Datei, die er las, jedes Tool, das er aufrief, jede API, die er traf — live erfasst, während die Sitzung läuft.

Das vollständige Transkript, archiviert

Prompts, Antworten und Tool-Aufrufe zentral aufbewahrt, abfragbar nach Team, Repo oder Modell und in Ihr bestehendes Aufbewahrungsarchiv exportierbar.

Identitätsgebunden und manipulationssicher

Jeder Datensatz trägt die SSO-Identität und das Gerät des Engineers, geschrieben in einen Append-Only-Stream, den Ihr SIEM so aufnehmen kann, wie es menschliche Aktivität aufnimmt.

Injection-Versuche, markiert

Wenn der Inhalt, den ein Agent gelesen hat — eine Datei, eine abgerufene Seite, eine Tool-Ausgabe — oder eine CLAUDE.md, der er vertraut hat, eingeschleuste Anweisungen enthielt, hält Bromures Erkennung auf dem Gerät es fest: die Quelle, den Ausschnitt und ob die Anfrage protokolliert, markiert oder blockiert wurde.

In der Praxis

Eine Sitzung rekonstruieren, Monate später

Eine Sicherheitsprüfung stellt eine einfache Frage: Hat je ein Agent das Payments-Modul berührt, und wenn ja, was hat er getan? Ohne Bromure ist das eine unbeantwortbare Frage, verteilt über Dutzende Laptops. Mit Bromure ist es eine Abfrage.

Jede Agenten-Sitzung lief in einer Bromure-VM, die ihre Aktivität an den Enterprise-Server streamte: die Identität des Engineers, das Modell, jeden Datei-Read und -Write mit Diffs, jeden Befehl, jedes Netzwerkziel und das vollständige Prompt-/Antwort-Transkript. Der Prüfer filtert auf das Payments-Repo und bekommt jede Sitzung, die es berührt hat — drei davon, zwei Engineers, mit den exakten Änderungen und den Gesprächen, die sie hervorbrachten.

Sie nehmen Stichproben aus den Transkripten, bestätigen, dass die Änderungen über den normalen Prozess geprüft und gemerged wurden, und hängen den Export an die Audit-Akte. Was ein mehrtägiges forensisches Gerangel gewesen wäre, ist eine Zehn-Minuten-Abfrage — und weil der Datensatz manipulationssicher ist, hält er als Beweis stand und nicht als Erinnerung.

Streamen Sie ihn in Ihr SIEM

Der Trail muss nicht in Bromure wohnen

Richten Sie Bromure auf Ihr eigenes SIEM oder Ihren OpenTelemetry Collector, und der gesamte Datensatz folgt Ihnen dorthin. Agent-Aktivität, Browser-Sitzungen und der Admin-Audit-Trail werden als OTLP/HTTP-Logs weitergeleitet — jedes Ereignis ein LogRecord mit semantischen OTel-Attributen und einem Schweregrad, den Ihre Alerts bereits verstehen. Bromure sendet aus seinen eigenen gespeicherten Ereignissen über einen fortlaufenden Cursor, sodass ein kurzer Ausfall an Ihrem Endpoint nichts verliert.

Richten Sie es auf Ihren Collector

Geben Sie Bromure Ihren OTLP/HTTP-Logs-Endpoint und, falls Ihr Collector ihn benötigt, einen Auth-Header — ein Bearer-Token, einen Datadog-Schlüssel, was auch immer er erwartet. Der Wert wird envelope-verschlüsselt gespeichert und nie wieder angezeigt. Wählen Sie, welche der drei Streams weitergeleitet werden.

[otlp]
endpoint = "https://otel.acme.com/v1/logs"   # https only
auth_header_name  = "Authorization"
auth_header_value = "Bearer <token>"          # envelope-encrypted at rest

[otlp.streams]
agentic_coding = true   # tool calls, credential use, injection, supply chain
web_sessions   = true   # managed-browser request metadata
audit          = true   # admin actions + ingest auth failures

Jede Aktion, ein OTLP-LogRecord

Jede Agent-Aktion wird auf einen LogRecord abgebildet, der die SSO-Identität des Entwicklers, das Modell, das Repo und die Aktion trägt — mit einem Schweregrad, auf den Ihr SIEM alarmieren kann. Ein blockierter Prompt-Injection-Versuch kommt als WARN an, das Ihre Detection-Pipeline bereits routet.

{
  "severityText": "WARN",
  "body": { "stringValue": "prompt_injection · tool output · blocked" },
  "attributes": {
    "enduser.id":         "[email protected]",
    "bromure.session.id": "f3a9…ce21",
    "bromure.repo":       "acme/payments",
    "bromure.model":      "claude-opus-4-8",
    "bromure.event.type": "prompt_injection"
  }
}

Robuste Zustellung, mindestens einmal

Bromure leitet aus seinen eigenen gespeicherten Ereignissen mit einem Cursor pro Stream weiter, nicht aus dem Live-Ingest-Pfad. Fällt Ihr Collector aus, geht innerhalb der Aufbewahrung nichts verloren — die Zustellung setzt bei seiner Rückkehr an der zuletzt bestätigten Position fort.

stream           cursor        last forward   status
agentic_coding   seq:184201    2s ago         ok
web_sessions     ts:17:42:08   2s ago         ok
audit            id:90412      2s ago         ok
# endpoint outage → backoff + retry, cursor holds
# at-least-once · no loss within retention
Architektur & Integration

Wie es tatsächlich gebaut ist

Hier endet das Marketing. Was folgt, ist das technische Fundament, auf dem jedes Bromure-Deployment sitzt — ob Sie eine BYOD-Belegschaft schützen oder Klassifizierungsstufen innerhalb einer regulierten Behörde trennen.

Hypervisor-erzwungene Isolation

Jedes Profil läuft in einer eigenen, leichten Linux-VM auf Basis von Apples Virtualization.framework — mit eigenem Kernel, eigenem Dateisystem und eigenem Netzwerk-Stack, getrennt vom Host. Das Base-Image ist ein signierter, reproduzierbarer Alpine-Build, beim Sitzungsstart via APFS Copy-on-Write geklont (nahezu kein Plattenplatz-Overhead). Der Host kann den VM-Speicher nicht lesen; die VM kann weder Clipboard, Dateisystem noch Netzwerkadapter des Hosts lesen — es sei denn, die Profil-Richtlinie erlaubt es ausdrücklich.

Identität: SSO für Nutzer, mTLS für Geräte

Enrollment und Sitzungsstart sind durch zwei Faktoren abgesichert, die Ihre Organisation bereits betreibt. OIDC / SAML gegen Google Workspace, Okta, Microsoft Entra oder Authentik identifiziert den Nutzer. Ein pro Gerät ausgestelltes mTLS-Client-Zertifikat, aus Ihrer PKI und an die Installation gebunden, identifiziert die Maschine. Widerrufen Sie eines von beiden — und die nächste Sitzung startet nicht. Kein Agent zum Manipulieren, keine lokale Richtlinie, die sich umgehen lässt.

Profile-as-Code

Das Arbeitsprofil — erlaubte SaaS-Liste, Download-/Clipboard-/Screenshot-Haltung, VPN-Konfiguration, Tastaturlayout, Root-CAs, Netzwerk-Egress-Regeln — ist ein signiertes, deklaratives Artefakt. Versionieren Sie es in Git. Verteilen Sie es über Ihr MDM oder den Bromure-Config-Endpoint. Manipulierte Profile fallen durch die Signaturprüfung, und die Sitzung weigert sich zu starten. Was auf der Maschine des Nutzers läuft, ist bitgenau das, was Sie verfasst haben.

Netzwerk-Ebene pro Profil

Jedes Profil bringt seine eigene virtuelle NIC mit. Wählen Sie NAT über den Host, Bridge auf ein physisches Interface oder Tunneling via WireGuard, IKEv2 / IPsec oder Cloudflare WARP — alles in der VM terminiert, für den Host unsichtbar. Legen Sie DNS-Overrides, ausgehende Port-Whitelists, LAN-Isolation und einen HTTP-Proxy darüber. Segmentierung wird vom Hypervisor erzwungen — nicht von einem Aufkleber auf der Firewall.

Audit-Pipeline

Jede Anfrage — Zeitstempel, Verb, URL, Status, Nutzer, Profil, Gerät — wird außerhalb der VM in einem manipulationssicheren JSON-Lines-Stream erfasst und an den Log-Sink geliefert, den Sie bereits befüllen (SIEM, Data Lake, Retention-Archiv). Optional Headers-Only oder vollständige Sitzungsaufzeichnung für verdächtigen Traffic. Stabiles Schema, dokumentierte Felder, kein Vendor-Lock-in auf das Format.

Ephemer per Default, persistent nur auf Wunsch

Fenster schließen — die VM wird zerstört. Tokens, Cookies, Cache, Downloads und jede Malware, die während der Sitzung gelandet ist, gehen mit. Profile, die Zustand brauchen — ein Bookmarks-Set, eine gespeicherte Sitzung, eine eingeloggte SaaS — können optional eine LUKS-verschlüsselte persistente Disk aktivieren, mit einem Schlüssel im macOS-Keychain. Der Schlüssel verlässt das Gerät des Nutzers nie.

Häufige Fragen

Wie unterscheidet sich das von der Git-Historie?

+

Git zeigt den finalen committeten Diff. Bromure zeigt die ganze Sitzung, die ihn hervorbrachte — die Dateien, die der Agent las, aber nicht änderte, die Befehle, die er ausführte, die Sackgassen, die Netzwerkaufrufe und das Gespräch, das ihn antrieb. Git sagt Ihnen, was gelandet ist; Bromure sagt Ihnen, wie, und was sonst noch unterwegs passiert ist.

Ist der Datensatz manipulationssicher?

+

Ja. Sitzungen streamen während ihres Laufs in ein Append-Only-Log auf Ihrem Enterprise-Server und tragen die SSO-Identität und das Gerätezertifikat des Engineers. Ein Engineer kann nicht still im Nachhinein bearbeiten, was sein Agent getan hat.

Können wir das in unsere bestehenden SIEM- und Aufbewahrungstools einspeisen?

+

Ja — nativ, über OpenTelemetry. Richten Sie Bromure auf den OTLP/HTTP-Logs-Endpoint Ihres SIEM oder OpenTelemetry Collectors, und Agent-Aktivität, Browser-Sitzungen und der Audit-Trail strömen dorthin als OTLP-LogRecords mit semantischen OTel-Attributen. Transkripte werden separat in dasselbe Archiv exportiert, das Sie bereits für E-Mail- und Chat-Aufbewahrung nutzen.

Verlangsamt das Erfassen all dessen die Engineers?

+

Nein. Die Erfassung geschieht an der VM-Grenze, dem Engineer aus dem Weg. Sie führen Claude Code oder Codex genau wie zuvor aus; der Datensatz wächst automatisch an.

„Die KI war's“ ist kein Audit-Trail.

Machen Sie jede Agenten-Sitzung zu einem attribuierbaren, manipulationssicheren Datensatz, den Ihre Auditoren akzeptieren.