DEF-03 · Verteidigung & Härtung

Agenten-Tools mit minimalen Rechten: Capability Scoping, Gating und Human-in-the-Loop

Wie Sie KI-Agenten mit minimalen Rechten ausstatten: Capability Scoping, Berechtigungs-Gating, dynamische Werkzeugauswahl und Human-in-the-Loop für irreversible Aktionen.

Defense in Depth: Ein Angriff wird durch mehrere Kontrollschichten abgeschwächt, bevor er eine privilegierte Aktion erreichtAngriffEingabefilterL1MindestrechteL2SandboxL3FreigabeL4jede Schicht geht davon aus, dass die vorherige versagt hat — der Schadensradius schrumpft von links nach rechts

Agenten-Tools mit minimalen Rechten: Capability Scoping, Gating und Human-in-the-Loop

Ein KI-Agent ist nur so gefährlich wie die Werkzeuge, die er aufrufen darf. Ein Sprachmodell, das ausschließlich Text erzeugt, kann im schlimmsten Fall falsche Antworten liefern. Sobald derselbe Agent jedoch eine Shell ausführen, E-Mails versenden, Datensätze löschen oder Zahlungen auslösen kann, wird aus einem Genauigkeitsproblem ein Sicherheitsproblem. Genau hier setzt das Prinzip der minimalen Rechte an: Der Agent erhält nur jene Fähigkeiten, die er für die jeweilige Aufgabe tatsächlich benötigt, und keine einzige mehr.

Kurze Antwort auf die Titelfrage: Agenten-Tools mit minimalen Rechten entstehen durch vier ineinandergreifende Mechanismen. Erstens Capability Scoping — jedes Werkzeug erhält einen eng definierten Wirkungsbereich (welche Ressourcen, welche Operationen, welche Limits). Zweitens Berechtigungs-Gating — vor der Ausführung prüft eine vom Modell unabhängige Schicht, ob der konkrete Aufruf erlaubt ist. Drittens dynamische Werkzeugeinschränkung — dem Agenten wird pro Aufgabe nur die kleinste passende Werkzeugmenge sichtbar gemacht. Viertens Human-in-the-Loop — irreversible oder risikoreiche Aktionen werden angehalten, bis ein Mensch sie explizit freigibt. Erst alle vier zusammen verwandeln einen prinzipiell allmächtigen Agenten in ein kontrollierbares System.

Im Folgenden gehen wir jeden dieser Bausteine durch, zeigen, wo die typischen Fehler liegen, und ordnen die Maßnahmen in das OWASP-Risiko Excessive Agency sowie in die Architektur einer abgesicherten Agenten-Schleife ein.


Warum sind minimale Rechte bei KI-Agenten unverzichtbar?

Klassische Software führt nur jene Codepfade aus, die ein Entwickler vorgesehen hat. Ein Agent hingegen entscheidet zur Laufzeit selbst, welches Werkzeug er mit welchen Argumenten aufruft — auf Basis von Eingaben, die er aus unzuverlässigen Quellen bezieht. Eine Webseite, eine E-Mail oder ein Dokument kann eine indirekte Prompt Injection enthalten, die den Agenten anweist, etwas ganz anderes zu tun als beabsichtigt.

Entscheidend ist dabei der Unterschied zwischen vorhandener und tatsächlich benötigter Fähigkeit. Verfügt der Agent über ein Werkzeug zum Löschen von Datensätzen, obwohl seine Aufgabe nur das Lesen erfordert, dann wird im Kompromittierungsfall genau dieses Löschwerkzeug zur Waffe. Das Sprachmodell ist nicht der Verteidigungswall — es ist der Angriffsvektor. Deshalb müssen die Grenzen außerhalb des Modells gezogen werden, in einer deterministischen Schicht, die das Modell nicht überreden kann.

Das OWASP-Projekt fasst diese Klasse von Schwachstellen unter Excessive Agency zusammen: zu viele Funktionen, zu weitreichende Berechtigungen oder zu hohe Autonomie. Die hier beschriebenen Mechanismen sind die direkte architektonische Antwort darauf. Sie folgen demselben Gedanken wie das Least-Privilege-Prinzip aus der klassischen Zugriffskontrolle — übertragen auf eine Welt, in der der handelnde Akteur nichtdeterministisch ist.


Was bedeutet Capability Scoping konkret?

Capability Scoping bezeichnet die enge Begrenzung dessen, was ein einzelnes Werkzeug überhaupt bewirken kann. Ein Werkzeug ist nicht einfach „Datenbankzugriff“, sondern „Lesezugriff auf die Tabelle tickets, gefiltert auf die Organisation des aktuellen Nutzers, maximal 100 Zeilen“. Der Wirkungsbereich wird also entlang mehrerer Achsen zugeschnitten.

Sinnvoll sind in der Praxis vier Dimensionen des Zuschnitts:

  • Ressource — auf welche Objekte, Tabellen, Pfade oder Endpunkte darf das Werkzeug zugreifen?
  • Operation — nur lesen, oder auch schreiben, ändern, löschen? Lese- und Schreibrechte gehören in getrennte Werkzeuge.
  • Identität — in wessen Namen handelt der Aufruf? Der Agent sollte mit der eingeschränkten Identität des Endnutzers arbeiten, nicht mit einem allmächtigen Service-Konto.
  • Limit — Mengenbegrenzungen, Ratenlimits, Geldbeträge, Zeitfenster. Ein Überweisungswerkzeug ohne Betragsobergrenze ist ein offenes Tor.

Ein häufiger Fehler besteht darin, dem Agenten breite, generische Werkzeuge zu geben — etwa ein einziges „SQL ausführen“-Tool oder einen ungefilterten Shell-Zugang. Solche Universalwerkzeuge lassen sich technisch kaum eingrenzen, weil ihr Wirkungsbereich erst aus dem vom Modell erzeugten Argument entsteht. Besser sind viele schmale, aufgabenspezifische Werkzeuge mit klar typisierten Parametern, deren erlaubter Wertebereich serverseitig erzwungen wird.

Faustregel: Wenn sich ein Werkzeug nicht in einem Satz beschreiben lässt, ohne das Wort „beliebig“ zu verwenden, ist sein Wirkungsbereich zu weit gefasst.


Wie funktioniert Berechtigungs-Gating vor der Ausführung?

Berechtigungs-Gating ist die Kontrollschicht zwischen der Entscheidung des Modells und der tatsächlichen Ausführung. Das Modell schlägt einen Werkzeugaufruf samt Argumenten vor — doch ausgeführt wird er erst, nachdem eine unabhängige Richtlinienprüfung ihn freigegeben hat. Diese Prüfung ist deterministischer Code, kein zweiter Prompt, und sie lässt sich durch keine noch so geschickte Formulierung in den Eingabedaten aushebeln.

Ein robustes Gate prüft mehrere Aspekte des konkreten Aufrufs, bevor er die Außenwelt erreicht:

  1. Ist dieses Werkzeug im aktuellen Kontext überhaupt erlaubt? — abhängig von Aufgabe, Sitzung und Nutzerrolle.
  2. Liegen die Argumente innerhalb des erlaubten Wertebereichs? — keine fremde Organisations-ID, kein Pfad außerhalb des Arbeitsverzeichnisses, kein Betrag über dem Limit.
  3. Werden Ratenlimits und Budgets eingehalten? — Schutz vor Aufrufschleifen und vor stiller Eskalation über viele kleine Aufrufe.
  4. Erfordert dieser Aufruf eine menschliche Freigabe? — Übergabe an den Human-in-the-Loop-Pfad (siehe unten).

Wichtig ist die Reihenfolge: Die Argumente werden unabhängig vom Modell validiert. Es genügt nicht, das Modell anzuweisen, „nur erlaubte Werte“ zu verwenden — eine kompromittierte Eingabe könnte genau diese Anweisung überschreiben. Die Validierung gehört in den Server, der das Werkzeug ausführt, und sie muss fehlschlagen, wenn ein Argument nicht zweifelsfrei erlaubt ist (Fail-Closed statt Fail-Open).

Das folgende Pseudobeispiel verdeutlicht die Trennung:

def gate(tool_call, context):
    tool = registry.get(tool_call.name)
    if tool is None or tool.name not in context.allowed_tools:
        return Deny("Werkzeug im aktuellen Kontext nicht freigeschaltet")

    # Argumente serverseitig prüfen — niemals dem Modell vertrauen
    if not tool.validate_args(tool_call.args, context):
        return Deny("Argumente außerhalb des erlaubten Bereichs")

    if context.budget.exceeded(tool):
        return Deny("Rate- oder Budgetlimit erreicht")

    if tool.is_irreversible:
        return RequireApproval(tool_call)  # Human-in-the-Loop

    return Allow(tool_call)

Das Gate ist die Stelle, an der das Prinzip der minimalen Rechte durchgesetzt wird. Capability Scoping definiert die Regeln; das Gating wendet sie auf jeden einzelnen Aufruf an.


Wie schränkt man den Werkzeugsatz dynamisch auf die Aufgabe ein?

Dynamische Werkzeugeinschränkung bedeutet, dem Agenten zu jedem Zeitpunkt nur die kleinste Werkzeugmenge sichtbar zu machen, die die aktuelle Teilaufgabe verlangt. Statt sämtliche fünfzig verfügbaren Werkzeuge in jeden Kontext zu laden, erhält der Agent für eine Recherche-Aufgabe nur Lesewerkzeuge, für eine Buchungsaufgabe nur die Buchungswerkzeuge und so weiter. Was nicht im Kontext steht, kann auch nicht missbraucht werden.

Dieser Ansatz wirkt auf zwei Ebenen zugleich. Sicherheitstechnisch verkleinert er die Angriffsfläche: Eine Prompt Injection kann nur Werkzeuge aufrufen, die in diesem Moment exponiert sind. Qualitativ verbessert er die Zuverlässigkeit, denn Modelle wählen aus wenigen klar abgegrenzten Optionen treffsicherer als aus einem großen, überlappenden Werkzeugkatalog.

In der Praxis lässt sich die Auswahl auf mehrere Weisen steuern. Eine Phasenlogik schaltet Werkzeuggruppen entlang des Arbeitsablaufs frei — zuerst Recherche, dann Entwurf, dann Ausführung. Eine Rollen- oder Profilbindung koppelt die Werkzeugmenge an die Identität des Nutzers, in dessen Auftrag der Agent handelt. Und ein Vorauswahlschritt kann anhand der Aufgabenbeschreibung die passenden Werkzeuge bestimmen, bevor der eigentliche Agent überhaupt startet. Bei vielen Werkzeugen aus dem MCP-Ökosystem empfiehlt es sich zudem, Server und ihre Werkzeuge erst dann zu verbinden, wenn die Aufgabe sie wirklich erfordert.

Mechanismus Was wird begrenzt? Greift wann? Schützt vor allem gegen
Capability Scoping Wirkungsbereich je Werkzeug bei der Definition zu mächtige Einzelwerkzeuge
Dynamische Einschränkung sichtbare Werkzeugmenge pro Aufgabe / Phase Missbrauch nicht benötigter Werkzeuge
Berechtigungs-Gating konkreter Aufruf + Argumente zur Laufzeit, vor Ausführung unerlaubte Aufrufe, Argument-Manipulation
Human-in-the-Loop irreversible Aktionen vor der Ausführung unumkehrbare Fehlhandlungen

Die vier Mechanismen sind komplementär, nicht austauschbar. Scoping und dynamische Einschränkung verkleinern die Menge des Möglichen im Vorfeld; Gating und Human-in-the-Loop fangen ab, was im konkreten Moment trotzdem riskant ist.


Wann brauchen irreversible Aktionen einen Menschen in der Schleife?

Human-in-the-Loop bedeutet, dass der Agent vor bestimmten Aktionen anhält und eine ausdrückliche menschliche Freigabe einholt, statt eigenständig zu handeln. Die Leitfrage lautet nicht „Ist die Aktion wichtig?“, sondern „Lässt sie sich rückgängig machen?”. Eine versehentlich versendete Massen-E-Mail, eine gelöschte Produktionsdatenbank oder eine ausgelöste Zahlung sind in der Regel nicht reversibel — und genau dort ist die menschliche Bestätigung am wertvollsten.

Als Schwellen für eine verpflichtende Freigabe haben sich folgende Kriterien bewährt:

  • Irreversibilität — Löschungen, Zahlungen, Versand nach außen, Veröffentlichungen, Vertragsabschlüsse.
  • Wirkungsbereich — Aktionen, die viele Datensätze, viele Empfänger oder externe Systeme betreffen.
  • Niedriges Vertrauen in die Eingaben — der Aufruf stützt sich auf Daten aus unzuverlässigen Quellen (Web, eingehende E-Mail, fremde Dokumente).
  • Überschrittene Limits — der Aufruf liegt über einem definierten Betrags-, Mengen- oder Reichweitenschwellenwert.

Eine wirksame Freigabe muss dem Menschen den konkreten, vollständigen Aufruf zeigen — Werkzeug, alle Argumente, voraussichtliche Wirkung — und nicht nur eine vage Bestätigungsfrage. Sonst entsteht eine „Bestätigungsmüdigkeit“, bei der Nutzer routinemäßig zustimmen, ohne zu prüfen. Sinnvoll ist es, die Freigaben selten, aber aussagekräftig zu halten: Reversible Routineaktionen laufen ohne Unterbrechung, während die wenigen wirklich gefährlichen Aktionen eine bewusste Entscheidung erzwingen.

Ergänzend gilt: Auch der Freigabepfad muss manipulationssicher sein. Die Beschreibung des Aufrufs, die dem Menschen vorgelegt wird, sollte aus den deterministisch validierten Argumenten stammen — nicht aus einem vom Modell formulierten Text, der die wahre Wirkung verschleiern könnte. Jede Freigabe und jede Ablehnung gehört zudem revisionssicher protokolliert, damit im Nachhinein nachvollziehbar bleibt, wer welche Aktion autorisiert hat.


Wie greifen die vier Mechanismen in der Agenten-Schleife ineinander?

Die Wirkung entsteht durch die Anordnung in der Ausführungsschleife. Ein durchdachter Ablauf sieht so aus: Zu Beginn einer Aufgabe legt das System fest, welche Werkzeugmenge sichtbar ist (dynamische Einschränkung). Jedes dieser Werkzeuge ist bereits eng zugeschnitten (Capability Scoping). Schlägt das Modell einen Aufruf vor, prüft das Gate Kontext, Argumente und Limits (Berechtigungs-Gating). Ist der Aufruf irreversibel oder überschreitet er eine Schwelle, wandert er in den Freigabepfad (Human-in-the-Loop). Erst danach wird das Werkzeug ausgeführt, das Ergebnis fließt zurück in die Schleife — und jeder Schritt landet im Protokoll.

Diese Schichtung folgt dem Prinzip der Verteidigung in der Tiefe. Keine einzelne Maßnahme ist für sich genommen ausreichend. Capability Scoping allein hilft nicht, wenn ein zu breites Werkzeug zur Laufzeit jeden Wert akzeptiert. Gating allein hilft nicht, wenn dem Agenten ohnehin nur gefährliche Universalwerkzeuge zur Verfügung stehen. Erst das Zusammenspiel verkleinert sowohl die Menge des Möglichen als auch das Risiko jedes einzelnen Schritts.

Ein letzter, oft übersehener Punkt betrifft die Beobachtbarkeit. Minimale Rechte lassen sich nur dann aufrechterhalten, wenn nachvollziehbar ist, welche Werkzeuge ein Agent in der Vergangenheit tatsächlich genutzt hat. Aus dieser Telemetrie ergeben sich konkrete Hinweise, wo Rechte weiter beschnitten werden können — denn ein Werkzeug, das über Wochen kein einziges Mal aufgerufen wurde, gehört vermutlich gar nicht in den Werkzeugsatz. So wird das Least-Privilege-Prinzip nicht zur einmaligen Konfiguration, sondern zu einem fortlaufenden, datengestützten Prozess.


Fazit

Agenten-Tools mit minimalen Rechten sind kein einzelnes Feature, sondern ein Architekturmuster aus vier abgestimmten Bausteinen. Capability Scoping schneidet jedes Werkzeug eng zu. Dynamische Werkzeugeinschränkung zeigt pro Aufgabe nur das Nötige. Berechtigungs-Gating prüft jeden Aufruf deterministisch und außerhalb des Modells. Human-in-the-Loop sichert die wenigen irreversiblen Aktionen durch eine bewusste menschliche Entscheidung ab. Wer alle vier umsetzt, behandelt das Sprachmodell konsequent als unzuverlässigen Akteur — und genau das ist die Grundvoraussetzung dafür, autonome Agenten verantwortbar in produktive Systeme zu bringen.

Am meisten bringen diese vier Bausteine, wenn sie beim Entwurf des Agenten entschieden werden und nicht erst nachträglich nachgerüstet — wo Werkzeugumfang und Rechtegrenzen im gesamten Entwicklungsprozess eines Agenten ansetzen, beschreibt der Beitrag zu sicherer Agentenentwicklung.

Häufige Fragen

Was bedeutet das Prinzip der minimalen Rechte bei KI-Agenten?

Es bedeutet, dass ein Agent nur jene Werkzeuge und Berechtigungen erhält, die er für die konkrete Aufgabe tatsächlich braucht — und keine darüber hinaus. Da das Sprachmodell zur Laufzeit selbst entscheidet, welche Werkzeuge es aufruft, und dabei unzuverlässige Eingaben verarbeitet, begrenzt das Least-Privilege-Prinzip den Schaden, den eine Kompromittierung anrichten kann. Die Grenzen werden außerhalb des Modells in einer deterministischen Schicht durchgesetzt.

Was ist der Unterschied zwischen Capability Scoping und Berechtigungs-Gating?

Capability Scoping definiert vorab den Wirkungsbereich jedes Werkzeugs — also welche Ressourcen, Operationen, Identitäten und Limits zulässig sind. Berechtigungs-Gating wendet diese Regeln zur Laufzeit auf jeden einzelnen vom Modell vorgeschlagenen Aufruf an und prüft Kontext, Argumente und Budgets, bevor die Aktion ausgeführt wird. Scoping legt die Regeln fest, Gating setzt sie pro Aufruf durch.

Warum sollten Werkzeugargumente unabhängig vom Modell validiert werden?

Weil eine Prompt Injection das Modell anweisen kann, gefährliche Argumente zu erzeugen oder eigene Sicherheitsanweisungen zu ignorieren. Verlässt sich die Validierung auf das Modell selbst, lässt sie sich durch manipulierte Eingaben aushebeln. Deshalb gehört die Argumentprüfung in den ausführenden Server und muss fehlschlagen, sobald ein Wert nicht zweifelsfrei erlaubt ist — also Fail-Closed statt Fail-Open.

Was bedeutet dynamische Werkzeugeinschränkung?

Dem Agenten wird zu jedem Zeitpunkt nur die kleinste Werkzeugmenge sichtbar gemacht, die die aktuelle Teilaufgabe verlangt, statt aller verfügbaren Werkzeuge. Das verkleinert die Angriffsfläche, weil nur exponierte Werkzeuge missbraucht werden können, und verbessert zugleich die Zuverlässigkeit, da Modelle aus wenigen klar abgegrenzten Optionen treffsicherer wählen.

Welche Aktionen sollten zwingend eine Human-in-the-Loop-Freigabe erfordern?

Vor allem irreversible und risikoreiche Aktionen: Löschungen, Zahlungen, Versand nach aussen, Veröffentlichungen oder Vertragsabschlüsse. Ebenso Aktionen mit großem Wirkungsbereich, Aufrufe auf Basis unzuverlässiger Eingaben und solche, die definierte Betrags-, Mengen- oder Reichweitenlimits überschreiten. Reversible Routineaktionen sollten ohne Unterbrechung laufen, damit keine Bestätigungsmüdigkeit entsteht.

Wie hängt das Least-Privilege-Prinzip mit Excessive Agency aus dem OWASP-Projekt zusammen?

Excessive Agency beschreibt das Risiko, dass ein Agent zu viele Funktionen, zu weitreichende Berechtigungen oder zu hohe Autonomie besitzt. Minimale Rechte sind die direkte architektonische Antwort darauf: Capability Scoping, dynamische Einschränkung, Gating und Human-in-the-Loop reduzieren genau diese drei Überschüsse und übertragen das klassische Least-Privilege-Prinzip auf nichtdeterministische Agenten.

Warum reicht es nicht, dem Modell im Prompt zu sagen, es solle nur erlaubte Aktionen ausführen?

Weil Anweisungen im Prompt durch manipulierte Eingaben überschrieben werden können und ein Sprachmodell keine harte Sicherheitsgrenze darstellt. Das Modell ist im Bedrohungsmodell der Angriffsvektor, nicht der Verteidigungswall. Wirksame Kontrolle entsteht nur durch deterministischen Code außerhalb des Modells, der Aufrufe validiert, blockiert oder zur Freigabe vorlegt.