Protections des prompts et réponses

Protections des prompts et réponses

Comment AI-FW inspecte prompts et réponses, règles intégrées et personnalisées, ordre d’évaluation et actions.

AI-FW inspecte les prompts entrants avant le modèle et les réponses sortantes avant le client. Les règles intégrées couvrent les vecteurs courants d’attaque et de conformité ; les règles personnalisées étendent la protection à vos politiques.

Règles intégrées#

RègleDirectionActionDétection
Détection de jailbreakinboundblockDemandes d’ignorer les instructions précédentes, remplacement du système, mode DAN et contournement de sécurité.
Masquage PIIinboundmaskNuméros d’assurance sociale, cartes, emails et API keys, remplacés par [REDACTED_*].
Filtre de toxicitéoutboundblockMotifs de haine, discrimination et harcèlement.
Protection contre l’exfiltrationoutboundblockPrompts système divulgués, IP internes, identifiants et clés privées.

Les règles intégrées peuvent être activées ou désactivées individuellement dans Rules Manager, sous le nom System. Les règles personnalisées peuvent être ajoutées, modifiées, activées, désactivées et supprimées.

Ordre d’évaluation#

Chaque requête est évaluée de gauche à droite. Le premier résultat décisif l’emporte ; les étapes suivantes ne s’exécutent que si la requête reste indécise :

#ÉtapeRésultat
1Règles intégréesExécute les règles système : jailbreak, masquage PII, toxicité et exfiltration.
2Règles de blocageRejette avec 400 guardrail_violation ; le blocage l’emporte sur l’acceptation.
3Règles de masquageLa première correspondance réécrit le contenu et termine le groupe.
4Acceptation / journalisationLa première correspondance autorise la requête ; log_only évite aussi la conservation de l’aperçu.
5Niveau sémantiqueÉvalue la requête selon les politiques en langage naturel. Voir le guide d’analyse sémantique.
6Règle impliciteApplique l’action par défaut : autoriser ou bloquer (refus par défaut).
Le blocage l’emporte toujours

Si une règle de blocage correspond, aucune action ultérieure ne s’exécute, même si une règle d’acceptation correspond aussi. Le groupe de blocage accepte les règles textuelles : regex, mots-clés, limites de tokens, modèle et utilisateur.

Actions#

ActionEffet
blockRejette avec 400 guardrail_violation et l’emporte sur les autres actions.
maskRemplace le texte correspondant avant transfert.
log_onlyAccepte sans conserver le contenu et journalise la correspondance.
acceptAccepte et journalise ; les aperçus sont conservés dans l’audit.

Options par règle#

  • Skip semantic check : si activée et correspondante, la requête contourne le niveau sémantique.
  • Source IP / subnet : s’applique uniquement si l’IP cliente appartient au CIDR.
  • Destination IP / subnet : s’applique uniquement si l’IP backend résolue est dans le CIDR.
  • Key mode / streaming : fixe le comportement de clé upstream et du streaming. Voir le guide identité.

Requête bloquée#

Les transactions bloquées renvoient HTTP 400 avec une erreur structurée :

HTTP 400
{
  "error": {
    "message": "The transaction was intercepted and blocked by corporate AI security policy.",
    "type": "guardrail_violation",
    "code": "prompt_injection_detected",
    "details": { "policy_id": "BUILTIN-JAILBREAK", "timestamp": "2025-01-15T10:00:00Z" }
  }
}

La réponse inclut X-Gateway-Security: Violated.

Réécritures préservant la structure#

Le masquage PII et le remplacement du modèle par défaut préservent la structure JSON. Seuls les valeurs de chaînes JSON et le champ model changent ; appels d’outils et de fonctions, options de streaming et autres champs sont transmis octet pour octet.

Options fail-open#

La passerelle est fail-closed par défaut : une erreur du scanner ou une configuration manquante bloque la requête. Settings -> Fail-open Options propose trois exceptions facultatives, toutes désactivées par défaut :

ContrôleQuand activé
Scanner exceptionsUne exception du scanner de prompts autorise la requête avec un événement d’audit.
Response-scan exceptionsUne exception du scanner de réponses transfère la réponse sans inspection (jamais mise en cache).
Compression gateSi le niveau sémantique est indisponible, la compression s’applique sans validation ; les dérives sous le seuil sont toujours rejetées.

Chaque événement fail-open est journalisé avec un avertissement et audité.

Pour aller plus loin#

Pour aller plus loin