Multi-Tenant Agent Design (Isolation + Gouvernance)

Comment exécuter des agents multi-tenant sans cross-tenant writes : scoped credentials, budgets par tenant, tool policy et audit trails.
Sur cette page
  1. Le problème
  2. Non-négociable
  3. 1) Lier le contexte tenant avant que l’agent tourne
  4. 2) Scoper chaque tool call au tenant
  5. 3) Séparer l’état (et les caches) par tenant
  6. 4) Budgets et rate limits par tenant
  7. Diagramme (tool gateway scoppé par tenant)
  8. Failure modes fréquents
  9. Minimum controls pour shipper
  10. Related

Le problème

Les agents multi-tenant échouent de manière prévisible :

  • les données d’un tenant fuient dans le contexte d’un autre,
  • un tool call s’exécute avec les mauvais credentials,
  • les retries multiplient les writes car l’idempotency manque,
  • les logs ne suffisent pas pour prouver ce qui s’est passé.

Ce n’est généralement pas un problème de modèle. C’est une isolation runtime manquante.

Non-négociable

1) Lier le contexte tenant avant que l’agent tourne

L’identité tenant doit venir de l’auth et du routing — pas du modèle.

2) Scoper chaque tool call au tenant

Les tools doivent recevoir des credentials et des IDs de ressources scoppés au tenant.

3) Séparer l’état (et les caches) par tenant

Memory, artifacts et caches doivent être keyés par tenant (et souvent par environnement).

4) Budgets et rate limits par tenant

Les budgets et rate limits doivent être par tenant pour éviter qu’un tenant brûle le budget du système entier.

Diagramme (tool gateway scoppé par tenant)

Failure modes fréquents

  • Credential bleed : clés/API partagées ou clients globaux réutilisés entre tenants.
  • Cache bleed : caches de retrieval keyés seulement par URL/query, pas par tenant.
  • Write duplication : retries sans idempotency keys.
  • Silent partial writes : step N écrit ok, step N+1 échoue → état incohérent.

Minimum controls pour shipper

  • Allowlists default-deny, scoppées par tenant et environnement.
  • Idempotency keys pour tous les writes.
  • Budgets par tenant (steps/seconds/$) + rate limits par tenant.
  • Traces complètes avec tenant_id + stop_reason pour chaque run.

Pas sur que ce soit votre cas ?

Concevez votre agent ->
⏱️ 2 min de lectureMis à jour Mars, 2026Difficulté: ★★★
Intégré : contrôle en productionOnceOnly
Ajoutez des garde-fous aux agents tool-calling
Livrez ce pattern avec de la gouvernance :
  • Budgets (steps / plafonds de coût)
  • Permissions outils (allowlist / blocklist)
  • Kill switch & arrêt incident
  • Idempotence & déduplication
  • Audit logs & traçabilité
Mention intégrée : OnceOnly est une couche de contrôle pour des systèmes d’agents en prod.
Auteur

Cette documentation est organisée et maintenue par des ingénieurs qui déploient des agents IA en production.

Le contenu est assisté par l’IA, avec une responsabilité éditoriale humaine quant à l’exactitude, la clarté et la pertinence en production.

Les patterns et recommandations s’appuient sur des post-mortems, des modes de défaillance et des incidents opérationnels dans des systèmes déployés, notamment lors du développement et de l’exploitation d’une infrastructure de gouvernance pour les agents chez OnceOnly.