deny, sanitize, [EMAIL]. Cette page
est la table de consultation de ces mots : ce que chacun signifie, ce qu’il fait à
l’appel, et où aller pour les mécanismes complets. Gardez-la ouverte pendant que vous
rédigez des règles ou triez le flux d’événements.
Deux plans de contrôle produisent deux vocabulaires. Le
Firewall gouverne les actions d’outils et émet un
verdict. Les Guardrails filtrent le texte des prompts
et réponses et émettent une action plus, sur un mask, un tag de masquage typé.
Ils ne partagent jamais un mot — un guardrail ne dit jamais deny, un firewall ne dit
jamais mask.
C’est un index de référence, pas un guide pratique. Pour le cas d’usage derrière chaque
contrôle, voir Guardrails vs Firewall ;
pour les corps HTTP, voir
Codes d’erreur de sécurité.
1. Le glossaire des verdicts firewall
Une règle firewall (ou ledefault_verdict de la politique) résout chaque appel
d’outil en exactement un de ces six verdicts. Le moteur parcourt les règles dans
l’ordre de priorité, la première correspondance gagne, et retombe sur le défaut si
rien ne correspond.
allow — laisser passer l'appel
allow — laisser passer l'appel
L’appel procède jusqu’à l’outil. Toujours journalisé comme un événement firewall,
donc il apparaît dans Runs et le flux d’événements. C’est ce que vous voulez pour
les outils qu’un agent est explicitement de confiance pour utiliser.
audit — autoriser, mais l'enregistrer pour revue
audit — autoriser, mais l'enregistrer pour revue
Trafic identique à
allow, mais marqué comme quelque chose que vous vouliez
surveiller. C’est le default_verdict recommandé : tout observer, ne rien
bloquer, jusqu’à ce que vos règles soient ajustées. Le niveau d’autonomie
balanced livre le guardrail PII Shield en flag-only (audit), donc la PII est
enregistrée sans mettre l’appel en attente.deny — bloquer l'appel
deny — bloquer l'appel
L’appel n’atteint jamais l’outil. Sur la surface
inbound, cela renvoie
HTTP 400 firewall_blocked ; à travers la passerelle MCP, il revient comme une
erreur d’outil (firewall deny: <reason>) afin que le modèle puisse réagir au
lieu de planter. Marqué skip-retry. Ne coûte aucun token de modèle.sanitize — redacter les arguments, transmettre l'appel nettoyé
sanitize — redacter les arguments, transmettre l'appel nettoyé
Remplace les sous-chaînes correspondantes (secrets, PII) dans les arguments de
l’appel d’outil par un token
[redacted:<preset>], puis transmet l’appel avec les
arguments nettoyés. Il redacte uniquement les arguments — jamais le contenu qu’un
outil renvoie. Sur la surface inbound, où il n’y a pas encore d’arguments au
moment de l’appel, sanitize escalade en un deny.pending_approval — mettre en attente d'un humain
pending_approval — mettre en attente d'un humain
L’appel est mis en file pour revue et l’agent reçoit une réponse held portant un id
d’approbation (HTTP 400
firewall_approval_pending). Un relecteur le résout
dans la console ou via un callback webhook HMAC ; l’agent interroge l’id et
re-soumet une fois avec un en-tête d’approbation à usage unique. Voir
Approbation humaine.cap_cost — refuser dès que l'exécution dépasse le budget
cap_cost — refuser dès que l'exécution dépasse le budget
Rédigé comme une règle avec un plafond en centimes par règle. Il se résout en
allow tant que l’exécution de l’agent est sous le budget et en deny dès que la
dépense accumulée franchit le plafond — donc un événement affiche allow ou
deny, pas le mot littéral cap_cost. Un disjoncteur pour les boucles emballées.Verdict par défaut
default_verdict n’accepte que les trois verdicts non-interactifs :
| Valeur | Signification quand aucune règle ne correspond |
|---|---|
allow | Permettre silencieusement les appels d’outils non couverts. |
audit | Permettre mais enregistrer — le défaut. |
deny | Bloquer tout ce qu’aucune règle n’autorise explicitement (posture default-deny). |
tight définit default_verdict: deny ; balanced et le défaut
livré utilisent audit.
2. Actions de guardrail
Une règle de guardrail déclenche l’une de cinq actions. Ce sont l’équivalent côté texte des verdicts — et une règle de guardrail ne produit jamais un verdict firewall.| Action | Ce qu’elle fait | Quota |
|---|---|---|
block | Rejeter toute la requête avec HTTP 400 guardrail_blocked. | Aucun — les blocks d’entrée se déclenchent avant le décompte ; les blocks de sortie remboursent. |
mask | Redacter chaque correspondance en un tag typé (voir §3) et transmettre le texte nettoyé. | Normal — l’appel procède. |
flag | Journaliser seulement. Enregistre une correspondance ; ne change rien au trafic. | Normal. |
annotate | Non-bloquant. Attache une note lisible par un humain à la requête (injectée en amont comme une notice de sécurité) sans masquer ni bloquer le texte. | Normal. |
spotlight | Non-bloquant. Encadre le texte (non fiable) correspondant dans des délimiteurs et dit au modèle de traiter la région délimitée comme des données, jamais des instructions — la défense « spotlighting » contre l’injection de prompt. | Normal. |
pii peut appliquer différentes actions à différentes entités avec
entity_actions — masquer les e-mails et les téléphones, mais bloquer sur
credit_card et ssn, depuis une seule règle. Les clés doivent être une entité
activée sur la règle ; les valeurs doivent être block / mask / flag / annotate.
3. Le glossaire des tags de masquage
Sur une actionmask, chaque entité correspondante est remplacée en ligne par un tag
typé — [<NOM_ENTITÉ_EN_MAJUSCULES>] — afin que le modèle (étape d’entrée) ou
l’appelant (étape de sortie) voie la forme de la donnée sans la valeur. Le masquage
s’exécute sur les deux étapes, y compris les réponses streamées : un scanner de flux
token-aware masque les correspondances qui chevauchent les limites de chunk avant
qu’elles n’atteignent le client.
| Entité | Tag |
|---|---|
email | [EMAIL] |
phone | [PHONE] |
credit_card | [CREDIT_CARD] |
ssn | [SSN] |
ip | [IP] |
iban | [IBAN] |
mac_address | [MAC_ADDRESS] |
jwt | [JWT] |
aws_access_key | [AWS_ACCESS_KEY] |
api_key_openai | [API_KEY_OPENAI] |
bitcoin_address | [BITCOIN_ADDRESS] |
| Entité | Tag | Région |
|---|---|---|
jp_mynumber | [JP_MYNUMBER] | Japon |
kr_rrn | [KR_RRN] | Corée du Sud |
cn_resident_id | [CN_RESIDENT_ID] | Chine |
Les entités personnalisées suivent la même convention. Une entité personnalisée
nommée
employee_id masque en [EMPLOYEE_ID] sauf si vous définissez un remplacement
mask_with explicite. Jusqu’à 25 entités personnalisées par règle, chacune un regex
RE2 avec une somme de contrôle luhn optionnelle. Voir
Détection PII.4. Un exemple travaillé
Un seul appel d’outildb.query, lu de haut en bas, touche les deux vocabulaires :
sanitize du firewall a nettoyé les arguments de l’outil ; le mask du guardrail
a nettoyé le texte du prompt ; le tag [EMAIL] est ce que le modèle voit à la place
de l’adresse. Même requête, trois couches différentes, trois mots de ce glossaire.
5. Mots de posture que vous verrez aux côtés des verdicts
Ce ne sont pas des verdicts ni des actions, mais ils décident si un verdict est appliqué du tout — donc ils apparaissent dans les mêmes vues d’événements et de réglages.| Mot | Plan | Signification |
|---|---|---|
| Mode shadow | Firewall | Flag par politique. Rétrograde chaque verdict appliquant en audit, préfixe la raison [shadow] would …. |
| Mode observe | Firewall | Réglage d’espace de travail. Quand aucune politique ne se résout, autorise l’appel mais le journalise comme une lacune de couverture (Discovered tools). |
| Enforce | Firewall | Shadow désactivé + une politique attachée : les verdicts prennent effet. |
| Fail-open | Guardrails | Défaut pour les règles avancées (llm_judge, grounding, external) — un timeout est observé, la requête continue. Basculez en fail-closed par règle. |
| Log raw content | Guardrails | Désactivé par défaut. Quand désactivé, une correspondance enregistre qu’une règle s’est déclenchée mais pas la sous-chaîne correspondante. |
6. Où chaque mot est défini
| Surface | Vocabulaire | Page de référence |
|---|---|---|
| Politique firewall | allow audit deny sanitize pending_approval cap_cost | Firewall |
| Correspondance de règle firewall | tool_name_glob, args_match, egress, sequence | Règles du Firewall |
| Règle de guardrail | block mask flag annotate spotlight | Guardrails |
| PII de guardrail | noms d’entités + tags de masquage | Guardrails |
| MCP & skills | bandes de risque de skill, modes quarantine / block | Firewall MCP, Firewall skills |
| Corps d’erreur HTTP | guardrail_blocked, firewall_blocked, firewall_approval_pending | Codes d’erreur |
7. Lectures associées
Pourquoi a-ce été bloqué ?
Tracez un seul appel refusé jusqu’à la règle et au verdict exacts qui l’ont
arrêté.
Modes d'application
Comment audit, shadow, observe et enforce se relient — et comment déployer en toute
sécurité.
Guardrails vs Firewall
Quel plan possède quelle décision, et pourquoi une requête peut traverser les deux.
Appels d'outils dangereux
La menace que les verdicts
deny et sanitize existent pour arrêter.