Passer au contenu principal
Vous avez lu une page de contrôle et il vous reste une question avant d’expédier. C’est la faq de sécurité des agents ia — les questions transverses qui couvrent toute la section Zero-Trust, répondues en un seul endroit, chacune renvoyant à la référence pour la profondeur. Si vous êtes tout nouveau dans la section, commencez à Sécuriser les agents IA et la pile de contrôle ; cette page suppose que vous savez qu’il y a deux plans d’application — Guardrails (texte de prompt/réponse) et le Firewall (actions d’agent) — et qu’il vous faut juste clouer les contours.

1. faq de sécurité des agents ia — commencez ici

Une carte de 30 secondes de quel contrôle répond à quelle question :
Vous demandez à propos de…Le planÀ lire
Texte dans les prompts ou réponses (PII, secrets, jailbreaks)GuardrailsGuardrails
Appels d’outils, MCP, egress, skillsFirewallFirewall
Lequel s’est déclenché sur un 400L’un ou l’autrePourquoi a-ce été bloqué ?
Chaque block de sécurité sur la passerelle hébergée est HTTP 400 avec un code lisible par machine. Lisez le code d’abord — il vous bifurque vers le bon flux. La table complète vit dans Codes d’erreur.

2. Guardrails — filtrage de contenu

Rien. La résolution est : guardrail_id explicite sur la clé (s’il existe et est activé) → sinon le guardrail is_default de l’espace de travail → sinon aucune application. Un attachement explicite désactivé est l’interrupteur d’arrêt — il ne retombe pas sur le défaut. Sans rien de résolu, la requête est identique octet pour octet à un espace de travail qui n’a jamais activé la fonctionnalité.
Non. Une action block renvoie 400 guardrail_blocked et ne coûte aucun quota — un block à l’étape d’entrée se déclenche avant le décompte ; un block à l’étape de sortie rembourse le quota pré-consommé. C’est aussi marqué skip-retry : ré-exécuter le prompt identique ne fait que bloquer à nouveau.
Types de règles : keyword, regex, pii, max_chars, external, llm_judge, grounding. Actions : block (rejeter), mask (redacter et transmettre), flag (journaliser seulement, aucun changement de trafic). Étapes : input, output, both. Voir Guardrails pour chacun.
Les entités intégrées incluent email, phone, credit_card, ssn, ip, iban, mac_address, jwt, aws_access_key, api_key_openai, bitcoin_address, plus des types régionaux (jp_mynumber, kr_rrn, cn_resident_id). Une action mask rend un tag typé — jane@acme.com[EMAIL], un SSN → [SSN]. Vous pouvez superposer jusqu’à 25 entités regex personnalisées par règle (avec une somme de contrôle Luhn optionnelle) et override l’action par entité via entity_actions.
Le block de sortie est appliqué dans les deux cas — les réponses non-streaming sont filtrées avant de revenir, et un scanner de streaming coupe le flux en vol. Le mask de sortie est actuellement non-streaming uniquement ; sur une réponse streaming, le chunk passe sans masquage (la réécriture de flux en bande est sur la roadmap). Le masquage à l’étape d’entrée — assainir la requête avant que le modèle ne la voie — est en service quoi qu’il en soit. Le preset PII Shield masque à l’étape d’entrée aujourd’hui.
Les règles keyword / regex / pii / max_chars ne font aucun appel de modèle et ne facturent rien. Une règle llm_judge exécute une vérification sémantique à travers un modèle d’espace de travail (bornée par judge_timeout_ms, fail-open par défaut) et est facturée comme une sous-ligne de juge distincte. Une règle grounding score la fidélité de la réponse contre les sources récupérées de la requête (seuil par défaut 0.7) de la même manière.
Ouvrez le flux Matches (GET /api/guardrail/match, Member). Chaque ligne enregistre le type de règle, l’action, l’étape, et une chaîne de détail — et la sous-chaîne correspondante seulement si « Log raw content » est activé pour ce guardrail (désactivé par défaut, la posture conservatrice côté vie privée). Block erroné ? Marquez-le comme faux positif (POST /api/guardrail/match/:id/mark-fp, Admin).
Un guardrail peut décorer un prompt avec un avis de sécurité de code (par ex. une note CVE/SBOM sur un package référencé) sans bloquer ni masquer le texte. C’est une couche d’annotation qui augmente la requête plutôt que de la rejeter — distincte des actions block / mask / flag que vous rédigez directement. Connectez un scanner sous Integrations pour le piloter.

3. Firewall — actions d’agent

Une différence clé : une politique firewall attachée désactivée retombe sur le défaut de l’espace de travail, tandis qu’un guardrail attaché désactivé se résout en aucun. Sinon, les deux s’attachent via la clé (firewall_policy_id / guardrail_id) et partagent le fallback sur le défaut de l’espace de travail. Voir Guardrails vs Firewall.
Verdicts : allow, audit, deny, sanitize, pending_approval, cap_cost. default_verdict est allow / audit / deny (audit par défaut). Surfaces : inbound (outils annoncés), response (tool_calls émis par le modèle), mcp (un tools/call), egress (host/IP/CIDR sortant). Le glossaire des verdicts décode chacun.
Non — et c’est l’idée fausse courante. Un verdict sanitize redacte les sous-chaînes correspondantes uniquement des arguments de l’appel d’outil, jamais le contenu qu’un outil renvoie. Sur la surface inbound (pas encore d’args au moment de l’appel), sanitize escalade en un deny.
Un seul interrupteur définit toute votre posture, en écrivant de vraies lignes autonomy_* éditables :
balanced (démarrage recommandé) — audit par défaut, deny du shell destructeur, PII Shield en audit-only (signale la PII).
tight — default-deny, deny du shell destructeur, deny des outils fetch en forme de SSRF, PII Shield + Secrets Blocker appliqués.
permissive — observe seulement.
L’annulation en un clic restaure l’état antérieur à partir du snapshot d’audit que l’application a écrit. C’est une étape unique — l’annulation est indisponible une fois qu’une application ultérieure (ou une édition manuelle de politique) a supplanté ce snapshot. Voir Modes d’application.
Pas par preset. Le preset SSRF de l’autonomie tight refuse les noms d’outils en forme de fetch courants (http_fetch, web_search, fetch_url, request). Pour refuser par destination — plages RFC-1918, IP de métadonnées cloud, CIDR spécifiques — rédigez votre propre règle de refus host/CIDR sur la surface egress. Aucun preset ne livre de règles CIDR pour vous. Voir Egress & exfiltration de données.
Activez le mode shadow (par politique) : la politique évalue et journalise mais rétrograde chaque verdict appliquant en audit, préfixant la raison [shadow] would …. Surveillez les vues Events et Runs, puis désactivez le shadow pour appliquer. Le mode observe au niveau de l’espace de travail (firewall_observe_mode) est le cadran de découverte complémentaire — il journalise les appels non couverts comme des lacunes dans Discovered Tools.
Un verdict pending_approval renvoie 400 firewall_approval_pending avec un id d’approbation. Un relecteur le résout depuis la console (Developer+) ou via un callback webhook HMAC (POST /api/v1/firewall/approvals/:id/callback). L’agent interroge GET /api/v1/firewall/approvals/:id et re-soumet l’appel d’origine avec un en-tête à usage unique X-OrcaRouter-Firewall-Approval. Voir Appels d’outils dangereux.
Des pics de débit/coût scorés contre une baseline heure-de-la-semaine apprise (14 jours), plus retry_loop et novel_path (une transition d’outil à outil jamais vue auparavant). Le flux est lisible par un Member ; mettez en sourdine une anomalie jusqu’à 7 jours. Voir Agence excessive.

4. MCP, clés & accès à la passerelle

Enregistrez un serveur (name, endpoint, auth_mode parmi none/bearer/oauth/basic, identifiants chiffrés) et la passerelle MCP évalue chaque tools/call sur la surface mcp avant le dispatch. La santé est suivie (ok/degraded/down) ; sondez-la avec POST /api/workspace/firewall/mcp_servers/:id/probe. Une sonde établit aussi une baseline du schéma d’outils annoncé du serveur — une dérive ultérieure bascule son statut de schéma de verified à changed (le signal « rug-pull »), et vous re-baselinez (approuvez) ou mettez le serveur en quarantine. Donc la gouvernance est l’évaluation par appel plus le suivi d’intégrité de schéma et les bandes de risque de skill. Voir Firewall MCP et Empoisonnement d’outils MCP.
Chaque skill est scanné en une bande de risque avec un mode d’application de allow / quarantine / block. Un skill en quarantaine est mis en attente d’approbation ; les skills auto-détectés restent en quarantaine jusqu’à ce qu’un humain les revoie. Le mode chevauche par-dessus le verdict de la règle.
model_limits (+ model_limits_enabled), allow_ips, credit_limit_usd (0 = illimité), expired_time (-1 = jamais), environment, guardrail_id, firewall_policy_id, et is_firewall_gateway. Combinez-les pour une agence minimale — voir Portée, clés & politiques. Les clés sont masquées à l’affichage.
Ces routes de passerelle (POST /evaluate, POST /evaluate_plan, ANY /mcp) requièrent une clé avec is_firewall_gateway=true — un token dédié scopé à la passerelle firewall, pas votre clé de relais sk-orca-…. Frapper une telle clé et lire son texte en clair est Admin+.
La configuration s’exécute dans la console — guardrails, politiques firewall, serveurs MCP, et conformité sont gérés sous votre token de session/accès (UserAuth), et chaque écriture est gardée par rôle (Developer+ pour les écritures de politique et de guardrail). Seul votre trafic de relais /v1/* utilise une clé sk-orca-… ; seuls les hooks de passerelle /api/v1/firewall/* utilisent le token scopé à la passerelle firewall.

5. Conformité, résidence & données

Le catalogue inclut SOC 2, HIPAA, GDPR, UK GDPR, l’EU AI Act, ISO 27001, ISO 42001, le NIST AI RMF, PCI DSS, CCPA, GLBA, l’OWASP Top 10 for LLM Applications (comme un mapping de contrôles), plus des profils régionaux (PIPL, APPI, PIPA, LGPD, PIPEDA, DPDP, les APPs d’Australie, le PDPA de Singapour, DORA, et plusieurs lois d’États américains). Parcourez le catalogue, les packs, et la préparation — tout Member, gratuit — à /api/compliance/*.
Parcourir est gratuit ; installer un pack, générer un rapport, passer en production, et fixer la résidence requièrent le rôle Admin de l’espace de travail et un plan payant (gardé côté serveur). Installer un pack (POST /api/compliance/packs/:key/install) matérialise de vrais guardrails + politiques firewall que vous pouvez ensuite éditer.
Oui. Un rapport est signé Ed25519 + SHA-256 et vérifiable publiquement : récupérez la clé publique (GET /api/public/compliance/pubkey), vérifiez un rapport (POST /api/public/compliance/verify), ou remettez à un auditeur un lien de partage (GET /api/public/compliance/share/:token). Les exports sont CSV / JSON / PDF.
C’est la région de l’artefact de rapport de conformité (us, eu, uk, ap, cn, global), réglable via PUT /api/compliance/residency (Admin) ; une lecture cross-région est retenue. Ce n’est pas un géo-épinglage de vos données d’inférence. Voir Responsabilité partagée.
La rétention des logs de requête est par défaut de 30 jours et plafonnée côté serveur à un max dur de 180 jours. Une suppression de compte est retenue pendant une fenêtre de grâce (défaut 30 jours) avant qu’un effacement irréversible de PII ne s’exécute ; cet effacement purge en cascade les payloads de logs de requête Mongo, les correspondances de guardrail, et les événements firewall qui vous sont attribués. Archiver un espace de travail purge en cascade les trois mêmes collections pour cet espace de travail. Voir Exposition de PII.
Un 400 provenant d’un contrôle de sécurité n’est pas un bug dans votre prompt. C’est une politique qui fait son travail. Ne réessayez pas — ces codes sont skip-retry. Tracez la règle, puis décidez s’il faut corriger l’appel ou assouplir la politique : Pourquoi a-ce été bloqué ?.

6. Toujours bloqué ?

Codes d'erreur

Chaque block, mise en attente, et rejet que la passerelle peut renvoyer.

Pourquoi a-ce été bloqué ?

Lisez le code, ouvrez le bon flux, trouvez la règle exacte.

API Guardrail

Routes, rôles, et payloads pour les politiques de contenu.

API Firewall

Routes console et passerelle pour la gouvernance d’action.

API Compliance

Endpoints de catalogue, installation, rapport, et résidence.

Glossaire

Chaque terme utilisé à travers les docs Zero-Trust.
Pour les menaces que ces contrôles arrêtent, commencez au modèle de menace. Pour un référentiel propre, suivez Référentiel Secure Agents.