Bienvenue sur FlowZap, l'application pour créer des diagrammes avec Rapidité, Clarté et Contrôle.

Faire confiance à votre agent IA : modèles d’architecture pour la sécurité et la confidentialité

29/03/2026

Tags: ai-agents, sécurité-ia, mcp, zero-trust, confidential-computing, architecture

Jules Kovac

Jules Kovac

Business Analyst, Founder

Faire confiance à votre agent IA : modèles d’architecture pour la sécurité et la confidentialité

Réponse rapide : sécuriser les agents IA en 2026 signifie appliquer une identité zero-trust aux agents, verrouiller les serveurs Model Context Protocol (MCP), contrôler chaque appel d’outil à l’exécution, supprimer les secrets du contexte et gouverner le shadow AI avant qu’il ne provoque une fuite ou une compromission.

 

 

Pourquoi l’IA agentique est le défi cybersécurité n°1 de 2026

La sécurité des agents IA est devenue l’un des sujets centraux de 2026. Quelques chiffres résument la situation :

  • 48 % des professionnels de la cybersécurité classent l’IA agentique comme premier vecteur d’attaque
  • 4,63 millions de dollars : coût moyen d’une brèche liée au shadow AI
  • 466,7 % de croissance annuelle des déploiements d’agents IA en entreprise
  • 14,4 % seulement de ces agents sont déployés avec une approbation sécurité complète
  • 30+ CVE MCP déposées en janvier-février 2026, avec un score CVSS maximal de 9,6
  • 10,86 milliards de dollars : valeur actuelle du marché de l’IA agentique

Les agents IA naviguent sur le web, écrivent et exécutent du code, appellent des API, envoient des emails, manipulent des fichiers et coordonnent d’autres agents. Contrairement aux attaques logicielles traditionnelles, il peut suffire d’une phrase injectée en langage naturel pour dévier leur comportement et déclencher une chaîne d’actions sur plusieurs systèmes.

Gartner, RSAC 2026 et IBM X-Force convergent tous vers la même conclusion : sécuriser les systèmes agentiques est désormais un sujet prioritaire.

 

 

Quel est le socle de gouvernance en 2026 ?

Deux cadres structurent aujourd’hui la base de référence :

  1. OWASP Top 10 for Agentic Applications (2026) — la taxonomie des 10 risques les plus critiques des systèmes IA autonomes.
  2. CSA Agentic Trust Framework (ATF, février 2026) — cinq domaines de contrôle : identité, comportement, gouvernance des données, segmentation réseau et réponse à incident.

 

 

Le Top 10 OWASP 2026 pour les applications agentiques

# ID Risque Où il frappe
1ASI01Détournement d’objectif (prompt injection)Entrées utilisateur, RAG, réponses d’outils, emails
2ASI02Mauvais usage des outilsCouche d’invocation des outils, ressources MCP
3ASI03Abus d’identité et de privilègesIAM, délégation, chaînes OBO
4ASI04Compromission de la supply chainServeurs MCP, modèles, registres de plugins
5ASI05Exécution de code imprévueInterpréteurs de code, sandboxes
6ASI06Empoisonnement mémoire et contexteMémoire long terme, bases RAG
7ASI07Communication inter-agents non sécuriséeCanaux orchestrateur/worker, protocole A2A
8ASI08Pannes en cascadeGraphes multi-agents
9ASI09Exploitation de la confiance humain-agentInterfaces HITL
10ASI10Agents rogueSous-agents auto-générés hors contrôle

 

 

Qu’est-ce que le shadow AI ?

Le shadow AI désigne les agents IA déployés sans validation IT ni sécurité. Une grande entreprise exploite en moyenne environ 1 200 applications IA non officielles, et une part importante des dirigeants n’a aucune visibilité sur les agents réellement actifs.

Le risque vient du fait que ces agents héritent souvent des droits de leur créateur : accès larges, pas d’audit, pas de règles de décommissionnement, et très peu de contrôles de politique. Une seule automatisation compromise peut alors s’étendre à toute l’organisation.

 

 

Qu’est-ce qu’une Non-Human Identity (NHI) ?

Une Non-Human Identity (NHI) est l’identité machine attribuée aux agents IA, bots, scripts et comptes de service. En 2026, la sécurité des identités non humaines est devenue critique, car les agents opèrent de façon autonome et doivent être traçables individuellement.

Chaque agent devrait disposer d’une identité cryptographique propre, à durée limitée, liée à une définition d’agent et à un périmètre de politique. Sans cela, les agents partagent des secrets, s’usurpent mutuellement et laissent peu de traces exploitables après incident.

 

 

Pattern d’architecture 1 — Identité d’agent zero-trust et gouvernance NHI

Pile d’implémentation recommandée :

  1. Microsoft Entra Agent ID (Preview) pour fédérer l’identité des agents
  2. SPIFFE / SPIRE pour l’attestation de workloads et le mTLS
  3. OAuth 2.0 Token Exchange (RFC 8693) pour émettre un token par saut
  4. DID + Verifiable Credentials pour les déploiements inter-organisations
  5. Outils d’inventaire NHI pour la découverte et la rotation continues

 

Code FlowZap — Pipeline d’identité zero-trust

User { # User
n1: circle label:"Start"
n2: rectangle label:"Send request + user JWT"
n3: rectangle label:"Receive approval"
n4: circle label:"End"
n1.handle(right) -> n2.handle(left)
n2.handle(bottom) -> AgentPlatform.n5.handle(top) [label="User JWT"]
n3.handle(right) -> n4.handle(left)
}

AgentPlatform { # Agent Platform
n5: rectangle label:"Validate JWT + agent ID"
n6: rectangle label:"Exchange for scoped OBO token"
n7: rectangle label:"Receive tool result"
n8: rectangle label:"Return approval"
n5.handle(right) -> n6.handle(left)
n6.handle(bottom) -> MCPTool.n9.handle(top) [label="Scoped OBO token"]
n7.handle(right) -> n8.handle(left)
n8.handle(top) -> User.n3.handle(bottom) [label="Approved"]
}

MCPTool { # MCP Tool
n9: rectangle label:"Validate scoped token"
n10: rectangle label:"Check SPIFFE SVID"
n11: rectangle label:"Execute tool call"
n12: rectangle label:"Return tool result"
n9.handle(right) -> n10.handle(left)
n10.handle(right) -> n11.handle(left)
n11.handle(right) -> n12.handle(left)
n12.handle(top) -> AgentPlatform.n7.handle(bottom) [label="Result"]
}

 

 

Pattern d’architecture 2 — Frontière MCP zero-trust

MCP est l’une des surfaces d’attaque les plus exposées en ce début 2026.

  1. Exiger OAuth 2.0 + Resource Indicators (RFC 8707)
  2. Valider les métadonnées d’outils MCP comme des entrées non fiables
  3. Isoler chaque exécution d’outil dans une sandbox éphémère
  4. Assainir les réponses d’outils avant de les réinjecter dans le contexte
  5. Maintenir un registre signé des serveurs MCP approuvés
  6. Surveiller les volumes, les flux inattendus et les mouvements latéraux

 

Code FlowZap — Frontière MCP zero-trust

Agent { # AI Agent
n1: circle label:"Start"
n2: rectangle label:"Request tool invocation"
n3: rectangle label:"Receive clean response"
n4: circle label:"Done"
n1.handle(right) -> n2.handle(left)
n2.handle(bottom) -> MCPGateway.n5.handle(top) [label="Tool call + OBO token"]
n3.handle(right) -> n4.handle(left)
}

MCPGateway { # MCP Security Gateway
n5: rectangle label:"Authenticate + check registry"
n6: rectangle label:"Route to sandbox"
n7: rectangle label:"Receive sandbox result"
n8: rectangle label:"Forward clean response"
n5.handle(right) -> n6.handle(left)
n6.handle(bottom) -> ToolSandbox.n9.handle(top) [label="Sandbox request"]
n7.handle(right) -> n8.handle(left)
n8.handle(top) -> Agent.n3.handle(bottom) [label="Sanitized response"]
}

ToolSandbox { # Tool Sandbox
n9: rectangle label:"Execute in isolated container"
n10: rectangle label:"Validate response"
n11: rectangle label:"Strip injection payloads"
n12: rectangle label:"Return clean result"
n9.handle(right) -> n10.handle(left)
n10.handle(right) -> n11.handle(left)
n11.handle(right) -> n12.handle(left)
n12.handle(top) -> MCPGateway.n7.handle(bottom) [label="Clean result"]
}

 

 

Pattern d’architecture 3 — Permissions dynamiques à l’exécution

Le moindre privilège doit être défini au niveau de l’action, pas au niveau global de l’outil.

  1. RBAC/ABAC au niveau de l’action (read-only, draft-only, SELECT only)
  2. Aucun outil actif par défaut
  3. Élévation JIT limitée à la durée de la tâche
  4. Moteur de politique type OPA ou Cerbos pour chaque appel
  5. Micro-segmentation entre environnement IA et production
Agent { # AI Agent
n1: circle label:"Start"
n2: rectangle label:"Request tool action"
n3: rectangle label:"Receive grant"
n4: rectangle label:"Execute scoped action"
n5: circle label:"Done"
n1.handle(right) -> n2.handle(left)
n2.handle(bottom) -> PolicyEngine.n6.handle(top) [label="Action + context"]
n3.handle(right) -> n4.handle(left)
n4.handle(right) -> n5.handle(left)
}

PolicyEngine { # Policy Engine
n6: rectangle label:"Evaluate RBAC + ABAC"
n7: rectangle label:"Issue JIT grant request"
n8: rectangle label:"Receive JIT credential"
n9: rectangle label:"Return scoped grant"
n6.handle(right) -> n7.handle(left)
n7.handle(bottom) -> JITManager.n10.handle(top) [label="Grant request"]
n8.handle(right) -> n9.handle(left)
n9.handle(top) -> Agent.n3.handle(bottom) [label="Scoped grant"]
}

JITManager { # JIT Access Manager
n10: rectangle label:"Create short-lived credential"
n11: rectangle label:"Return JIT credential"
n10.handle(right) -> n11.handle(left)
n11.handle(top) -> PolicyEngine.n8.handle(bottom) [label="JIT credential"]
}

 

 

Pattern d’architecture 4 — Agents IA sans secrets

Ne placez jamais de secrets dans la fenêtre de contexte d’un agent.

Le bon pattern consiste à interposer un Secrets Broker : l’agent ne voit que les capacités disponibles, tandis qu’un composant dédié récupère des secrets dynamiques de courte durée depuis un coffre-fort puis exécute l’appel API.

Il faut également appliquer une redaction systématique des clés, jetons et JWT dans les sorties, les logs et la mémoire.

 

 

Pattern d’architecture 5 — Human-in-the-loop gradué selon le risque

Le modèle binaire approuver/refuser provoque la fatigue décisionnelle. Il vaut mieux segmenter les actions par niveau de risque.

Niveau Type d’action Exemples Mode de validation
0 — AutoLecture seuleRecherche, résumé, brouillonAutomatique
1 — Soft GateÉcriture interneNote CRM, calendrierAuto + alerte
2 — Async ReviewCommunication externeEmail, exportFile de revue
3 — Hard BlockAction destructive ou financièreSuppression, virementValidation synchrone
4 — Never AutoInfrastructure critiqueDéploiement prod, effacement massifToujours humain + double approbation

 

Code FlowZap — HITL gradué selon le risque

Agent { # AI Agent
n1: circle label:"Start"
n2: rectangle label:"Propose action"
n3: rectangle label:"Receive approval"
n4: rectangle label:"Execute action"
n5: rectangle label:"Send execution record"
n6: circle label:"Complete"
n1.handle(right) -> n2.handle(left)
n2.handle(bottom) -> Policy.n7.handle(top) [label="Action + context"]
n3.handle(right) -> n4.handle(left)
n4.handle(right) -> n5.handle(left)
n5.handle(bottom) -> Audit.n13.handle(top) [label="Execution record"]
}

Policy { # Risk Policy Engine
n7: rectangle label:"Score action risk"
n8: rectangle label:"Create review request"
n9: rectangle label:"Receive reviewer decision"
n10: rectangle label:"Release action"
n7.handle(right) -> n8.handle(left)
n8.handle(bottom) -> Reviewer.n11.handle(top) [label="Tier 3 review"]
n9.handle(right) -> n10.handle(left)
n10.handle(top) -> Agent.n3.handle(bottom) [label="Approved"]
}

Reviewer { # Human Reviewer
n11: rectangle label:"Review diff"
n12: rectangle label:"Approve request"
n11.handle(right) -> n12.handle(left)
n12.handle(top) -> Policy.n9.handle(bottom) [label="Approved"]
}

Audit { # Audit Log
n13: rectangle label:"Write immutable record"
n14: rectangle label:"Return log ack"
n13.handle(right) -> n14.handle(left)
n14.handle(top) -> Agent.n6.handle(bottom) [label="Logged"]
}

 

 

Pattern d’architecture 6 — Observabilité sémantique

Le standard 2026 est OpenTelemetry avec les conventions sémantiques GenAI : appels LLM, invocations d’outils, décisions d’agents, événements de garde-fous et sessions complètes.

Signaux prioritaires à surveiller :

  1. Le taux d’activation des garde-fous
  2. Les anomalies de sélection d’outils
  3. Les latences anormales révélant des boucles de prompt injection
  4. Les demandes répétées d’élévation de privilèges

 

 

Pattern d’architecture 7 — Communication multi-agent sécurisée

  1. mTLS sur tous les canaux A2A
  2. Tokens scopés par saut
  3. API gateway pour validation JWT, rate limiting et détection d’anomalies
  4. Service mesh pour industrialiser le mTLS
  5. Monitoring comportemental pour détecter volumes et fréquences inhabituels

 

Code FlowZap — Communication multi-agent sécurisée

Orchestrator { # Orchestrator Agent
n1: circle label:"Receive task"
n2: rectangle label:"Decompose subtasks"
n3: rectangle label:"Send subtask A"
n4: rectangle label:"Receive result A"
n5: rectangle label:"Send subtask B"
n6: rectangle label:"Receive result B"
n7: rectangle label:"Aggregate results"
n8: circle label:"Return answer"
n1.handle(right) -> n2.handle(left)
n2.handle(right) -> n3.handle(left)
n3.handle(bottom) -> Gateway.n9.handle(top) [label="Subtask A + scoped token"]
n4.handle(right) -> n5.handle(left)
n5.handle(bottom) -> Gateway.n13.handle(top) [label="Subtask B + scoped token"]
n6.handle(right) -> n7.handle(left)
n7.handle(right) -> n8.handle(left)
}

Gateway { # API Gateway
n9: rectangle label:"Validate request A"
n10: rectangle label:"Route to worker A"
n11: rectangle label:"Receive result A"
n12: rectangle label:"Forward result A"
n13: rectangle label:"Validate request B"
n14: rectangle label:"Route to worker B"
n15: rectangle label:"Receive result B"
n16: rectangle label:"Forward result B"
n9.handle(right) -> n10.handle(left)
n10.handle(right) -> WorkerA.n17.handle(left) [label="Validated request A"]
n11.handle(right) -> n12.handle(left)
n12.handle(top) -> Orchestrator.n4.handle(bottom) [label="Result A"]
n13.handle(right) -> n14.handle(left)
n14.handle(right) -> WorkerB.n19.handle(left) [label="Validated request B"]
n15.handle(right) -> n16.handle(left)
n16.handle(top) -> Orchestrator.n6.handle(bottom) [label="Result B"]
}

WorkerA { # Worker Agent A
n17: rectangle label:"Validate token + execute"
n18: rectangle label:"Return result A"
n17.handle(right) -> n18.handle(left)
n18.handle(top) -> Gateway.n11.handle(bottom) [label="mTLS result A"]
}

WorkerB { # Worker Agent B
n19: rectangle label:"Validate token + execute"
n20: rectangle label:"Return result B"
n19.handle(right) -> n20.handle(left)
n20.handle(top) -> Gateway.n15.handle(bottom) [label="mTLS result B"]
}

 

 

Pattern d’architecture 8 — Sécurité de la supply chain IA

En 2026, les attaquants ciblent les serveurs MCP malveillants, les corpus RAG empoisonnés, les poids de modèles compromis et les dépendances vulnérables générées à la va-vite.

  1. Registre signé de serveurs MCP approuvés
  2. SBOM pour les composants IA
  3. Sanitation et quarantaine du contenu RAG récupéré
  4. Scans automatisés de dépendances dans le CI/CD

 

 

Pattern d’architecture 9 — Confidential AI pour secteurs régulés

Pour les charges HIPAA, SOX, PCI-DSS ou FedRAMP, exécutez l’inférence LLM dans une TEE matériellement attestée.

  1. Intel SGX / TDX / NVIDIA H100 HBI
  2. Validation des politiques au boot
  3. Déchiffrement RAG uniquement dans l’enclave
  4. Journaux d’audit signés par l’enclave

Plateformes citées : Opaque, Azure Confidential Computing, AWS Nitro Enclaves, Google Confidential VMs.

 

 

Checklist de maturité sécurité — mars 2026

Identité & gouvernance NHI

  • [ ] Chaque agent possède une identité cryptographique unique
  • [ ] Inventaire NHI maintenu et rotation automatisée
  • [ ] Token exchange OBO à chaque saut
  • [ ] Aucun secret dans le contexte agent, les .env ou l’historique de conversation

MCP & sécurité des outils

  • [ ] Tous les serveurs MCP exigent OAuth 2.0 + RFC 8707
  • [ ] Registre des serveurs MCP approuvés
  • [ ] Exécution d’outils sandboxée sans sortie réseau arbitraire
  • [ ] Réponses MCP assainies avant réinjection dans le contexte

Permissions d’exécution

  • [ ] Permissions au niveau de l’action
  • [ ] Zéro outil activé par défaut
  • [ ] OPA ou Cerbos valide chaque appel d’outil

Supervision humaine & shadow AI

  • [ ] Modèle HITL gradué défini
  • [ ] Les actions irréversibles exigent une approbation explicite
  • [ ] L’inventaire shadow AI est réalisé

Observabilité & audit

  • [ ] Conventions OpenTelemetry GenAI déployées
  • [ ] Taux d’activation des garde-fous supervisé
  • [ ] Journaux d’audit immuables et signés

 

 

Stack fournisseur recommandé (mars 2026)

Capacité Outils
Identité agent / NHIEntra Agent ID, SPIFFE/SPIRE, Token Security, Oasis Security
Gestion des secretsHashiCorp Vault, Akeyless, AWS Secrets Manager
Passerelle de sécurité MCPCerbos, OPA + gateway custom, Netskope AI
Moteur de politiqueCerbos, OPA, Permit.io
ObservabilitéLangfuse, Maxim AI, OpenLLMetry, Arize Phoenix
Découverte du shadow AINetskope, Gamma AI, Zscaler
Surveillance comportementaleRealm Labs, Darktrace AI
Confidential computingOpaque, Azure Confidential VMs, AWS Nitro Enclaves

 

 

Questions fréquentes

Quel est le plus grand risque sécurité pour les agents IA en 2026 ?
La compromission de l’écosystème agentique, en particulier les serveurs MCP, les toolchains et les identités non humaines mal gouvernées.

Comment gouverner le shadow AI ?
Commencez par un inventaire, imposez une couche d’identité et de politique, et centralisez l’observabilité via une passerelle API ou un contrôle d’accès commun.

Microsoft Entra Agent ID est-il disponible en GA ?
Non. En mars 2026, il reste en preview.

Qu’est-ce que le CSA Agentic Trust Framework ?
Un cadre de référence publié en 2026 couvrant l’identité, le comportement, la gouvernance des données, la segmentation et la réponse à incident pour les systèmes agentiques.

 

 

Inspirations:

Retour à tous les articles du blogue