1. Die Reihenfolge: Priorität aufsteigend, erster Treffer gewinnt
Innerhalb einer Policy werden Regeln inpriority ASC, id ASC-Reihenfolge
ausgewertet:
- Niedrigere
priorityläuft zuerst. Eine Regel mitpriority: 0wird vor einer mitpriority: 10geprüft. Denken Sie daran als Warteschlangenposition, nicht als Stärkewert — die kleinere Zahl bekommt das erste Wort. - Gleichstände werden über die Regel-ID gebrochen. Zwei Regeln auf
derselben
prioritylaufen in Erstellungsreihenfolge (aufsteigende Regel-ID), sodass die ältere Regel den Gleichstand gewinnt. Verwenden Sie distinkte Prioritäten, wenn die Reihenfolge tatsächlich zählt, statt sich auf den ID-Gleichstandsbrecher zu verlassen. - Erster Treffer gewinnt. Die Engine stoppt bei der ersten Regel, deren Bedingungen alle halten, und wendet ihr Verdikt an. Weiter unten in der Liste stehende Regeln werden für diesen Aufruf nie konsultiert.
- Kein Treffer → das Default-Verdikt. Wenn nichts matcht, gilt das
default_verdictder Policy —audit, sofern Sie es nicht geändert haben.
Eine Regel matcht nur, wenn jede deklarierte Bedingung zugleich hält: die
Surface, das
Tool-Namen-Glob, das optionale Skill-Glob,
die optionalen Argument-Klauseln und
der Egress-Scope (nur Egress-Regeln). Ein partieller Treffer ist kein Treffer,
und die Auswertung rückt zur nächsten Regel vor.
2. Ein konkretes Beispiel: spezifisch vor breit
Die kanonische Ordnungsaufgabe ist, ein enges Allow ein breites Deny überleben zu lassen. Setzen Sie die spezifische Regel auf eine niedrigere Priorität, sodass sie zuerst erreicht wird:shell.echo trifft zuerst Regel A (Priorität 10), matcht
und wird erlaubt — die Engine erreicht Regel B nie. Ein Aufruf von shell.exec
fällt durch A (das Glob matcht nicht), trifft Regel B und wird verweigert.
Kippen Sie die Prioritäten, und das breite shell.*-Deny auf Priorität 10 würde
shell.echo zuerst abfangen, und Ihr Allow auf Priorität 20 wäre toter Code.
Die Faustregel: am spezifischsten zuerst, am breitesten zuletzt.
3. Reihenfolge verifizieren, bevor Sie sich darauf verlassen
Über Priorität auf Papier nachzudenken ist fehleranfällig, sobald eine Policy mehr als eine Handvoll Regeln hat. Die Test-Sandbox läuft die echte Engine gegen einen Beispiel-Tool-Call und sagt Ihnen nicht nur das Verdikt, sondern welche Regel gewann — sodass Sie bestätigen können, dass die erwartete Regel tatsächlich feuerte:Den Test-Tab der Policy öffnen
Öffnen Sie in der Konsole die Policy und wechseln Sie zu Test
(Developer+).
Einen Beispielaufruf einreichen
Geben Sie einen Tool-Namen (und Argumente, wenn Ihre Regeln sie
inspizieren) ein und führen Sie ihn aus. Nichts wird dispatcht und nichts
persistiert — es ist ein Dry-Run.
4. Skill-Enforcement reitet obendrauf
Regel-Priorität entscheidet das Verdikt der gewinnenden Regel — aber das ist nicht immer die endgültige Antwort. Wenn der Tool-Call einem gesteuerten Skill gehört, wird der Enforcement-Mode des Skills obendrauf auf das gewinnende Verdikt angewendet, nach der Erster-Treffer-Auflösung:| Skill-Mode | Effekt auf das gewinnende Verdikt |
|---|---|
allow | Keine Änderung — das Regel-Verdikt steht. |
quarantine | Eskaliert alles unterhalb von deny zu pending_approval; ein bestehendes Deny bleibt wie es ist. |
block | Erzwingt ein deny unabhängig vom Regel-Verdikt. |
quarantine-Skill das allow einer Regel in einen
zurückgehaltenen Aufruf verwandeln, und ein block-Skill verweigert einen
Aufruf selbst dann, wenn keine Regel seine Tools benennt. Quarantäne
eskaliert nur — sie stuft ein Deny nie zu etwas Sanfterem herab. Deshalb bleibt
ein als riskant auto-detektierter Skill quarantäniert, bis Sie ihn prüfen, egal
wie permissiv Ihre Regeln sind.
5. Dinge, die nicht Erster-Treffer reiten
Ein paar Mechanismen sitzen außerhalb des Pro-Regel-Prioritätsdurchlaufs — wissen Sie, wo sie landen, sodass Sie nicht versuchen, sie zu ordnen:cap_cost — aufgelöst, nicht gerankt
cap_cost — aufgelöst, nicht gerankt
Eine
cap_cost-Regel unter ihrer
Obergrenze wird als nicht-matchend behandelt, sodass die Auswertung zur
nächsten Regel fortfährt, statt sie als Grant per Erster-Treffer gewinnen zu
lassen. Über der Obergrenze löst sie auf ein deny auf. Sie kurzschließt nie
eine niedriger-priorisierte Regel, nur weil sie erreicht wird.Sequenzen — reaktiv, nicht inline
Sequenzen — reaktiv, nicht inline
Eine Sequenzregel matcht eine Kette
von Aufrufen über ein Zeitfenster, sodass sie reaktiv von einem asynchronen
Matcher durchgesetzt wird statt auf dem einzelnen Aufruf, der die Kette
abschließt. Sie leuchtet den Events-Feed auf, gewinnt aber nicht den
Erster-Treffer-Durchlauf für einen einzelnen Aufruf.
Shadow-Mode — nach dem Verdikt angewendet
Shadow-Mode — nach dem Verdikt angewendet
Shadow-Mode ändert nicht, welche Regel
gewinnt — er stuft das gewinnende durchsetzende Verdikt auf
audit herab
(Grund mit Präfix [shadow] would …) nach der Erster-Treffer-Auflösung,
sodass Sie die Wirkung einer Policy messen können, bevor sie den Traffic
ändert.6. Alles zusammensetzen
Für jeden Tool-Call ist die volle Auflösung:- Die Policy auflösen — die an den aufrufenden Key angehängte, oder der Workspace-Default. Siehe Scope.
- Regeln in
priority ASC, id ASCdurchlaufen — erster Treffer gewinnt; kein Treffer →default_verdict. - Skill-Enforcement anwenden — der Mode eines gesteuerten Skills reitet
obendrauf auf dem gewinnenden Verdikt (
blockerzwingt deny,quarantineeskaliert). - Shadow-Mode anwenden — wenn an, durchsetzende Verdikte auf
auditherabstufen. - Das Event aufzeichnen — Verdikt, Surface, Tool und gematchte Regel landen im Events-Feed.
Das Bearbeiten der Priorität einer Regel wird beim nächsten Aufruf für jeden
an die Policy angehängten Key wirksam — kein Redeploy, keine Änderung im
Agenten-Code. Führen Sie die Test-Sandbox
nach dem Neu-Ordnen erneut aus, um den neuen Gewinner zu bestätigen, bevor
Live-Traffic davon abhängt.
Wohin als Nächstes
Verdikte
Was jedes gewinnende Verdikt tatsächlich tut.
Glob-Syntax
Wie Tool-Namen-Matching entscheidet, ob eine Regel überhaupt ein Kandidat
ist.
Regeln testen
Eine Policy dry-runnen und sehen, welche Regel gewinnt.
Tool-Allow-Listing
Das Default-Deny-Muster, das sich am stärksten auf Ordnung stützt.
