Décision et enforcement
Autorisation fine des agents IA
Un agent peut disposer d'un token, d'un rôle ou d'un compte assez puissant pour exécuter une action. Cela ne rend pas chaque action techniquement possible légitime pour la mission en cours. L'autorisation fine comble cet écart au moment de l'appel.
Le rôle définit ce que le compte pourrait faire. La politique runtime définit ce que l'agent est autorisé à faire maintenant.
Par Sécurité Agentique · Publié le
01
Pourquoi les rôles et les scopes OAuth ne suffisent pas toujours
RBAC et OAuth restent le socle. Un rôle bien découpé ou un scope précis peut suffire : si l'API expose invoices.read.own et que la mission consiste à lire ses propres factures, le scope porte déjà la bonne granularité.
L'écart apparaît quand la granularité métier dépasse celle de l'application. Un CRM expose trois scopes :
- crm.read
- Lire tous les objets accessibles.
- crm.write
- Lire, créer, modifier, exporter.
- crm.admin
- Tout, y compris la configuration.
La mission réelle de Hermes : exporter six champs d'une opportunité, une fois par jour, uniquement vers la plateforme de reporting. Aucun scope ne l'exprime. Le plus petit qui permet l'export, crm.write, autorise aussi la modification de n'importe quelle opportunité et l'export de tous les champs vers n'importe où. Le jeton est valide dans les deux cas ; seule une décision prise au moment de l'appel, avec les paramètres, peut les distinguer.
La distinction entre possession d'un jeton et autorisation effective est développée par ARIOVIS : pourquoi un scope OAuth ne suffit pas toujours.
02
PEP, PDP, PIP et PAP : qui fait quoi ?
- PAP
- politiques versionnées et testées
- PDP
- PEP · Policy Enforcement Point
- Sur le chemin de l'action. Intercepte, décrit la demande (sujet, action, ressource, contexte), interroge le PDP, applique la réponse. Voir PEP.
- PDP · Policy Decision Point
- Évalue les politiques et renvoie une décision. Ne touche pas au flux. Voir PDP.
- PIP · Policy Information Point
- Source d'attributs que la demande ne contient pas : annuaire, référentiel RH, classification, CMDB. Voir PIP.
- PAP · Policy Administration Point
- Où les politiques sont rédigées, relues, testées et publiées vers le PDP.
Un PDP ne bloque rien physiquement. S'il existe un chemin vers la ressource qui n'appelle pas le PEP, la meilleure politique du monde n'est qu'un avis.
Concrètement : si Hermes détient un token qui fonctionne aussi en appel direct à l'API, sans passer par la gateway, le contrôle est contournable. Le PEP doit être placé de sorte que l'action ne puisse pas l'éviter, par le réseau, par le token ou par l'architecture.
03
Une décision contextualisée
Alice demande à Hermes de préparer l'export quotidien des opportunités. Hermes appelle l'outil d'export avec son compte, qui porte crm.write. Deux demandes, un seul attribut change.
Demande 1
- Utilisateur
- Alice
- Agent
- Hermes
- Rôle du compte
- crm.write
- Action
- export
- Ressource
- Opportunités CRM
- Champs
- id, statut, montant, date, commercial
- Destination
- Reporting Corporate
- Horaire
- 08:00
✓ PERMIT
Demande 2
- Utilisateur
- Alice
- Agent
- Hermes
- Rôle du compte
- crm.write
- Action
- export
- Ressource
- Opportunités CRM
- Champs
- id, statut, montant, date, commercial
- Destination
- Stockage externe inconnu (attribut modifié)
- Horaire
- 08:00
✕ DENY
Même identité, même agent, même rôle, même jeton. Le contexte diffère, la décision aussi. Le rôle crm.write aurait laissé passer les deux.
04
Que peut contenir une politique ?
Une politique s'écrit à partir de six familles d'attributs. Les exemples ci-dessous sont formulés en langage naturel ; le PAP les traduit dans le langage de politique de la plateforme.
- Sujet
- L'utilisateur d'origine, l'agent, son propriétaire, son équipe. « Hermes n'agit que pour des utilisateurs de la direction commerciale. »
- Action
- export, read, update, delete, send. « Hermes ne supprime jamais d'opportunité. »
- Ressource
- Type, classification, propriétaire, pays. « Les opportunités classées confidentiel ne sont jamais exportées. »
- Environnement
- Horaire, terminal, réseau, niveau de risque. « Pas d'export hors 06:00-10:00. »
- Relation
- Lien entre sujet et ressource (ReBAC). « Alice n'exporte que les opportunités de son portefeuille. »
- Finalité
- Pourquoi l'action est demandée. « L'export n'est permis que pour le reporting mensuel. »
Ces règles combinent ABAC, PBAC, RBAC et ReBAC. Leur qualité dépend de celle des attributs : une classification absente ou fausse produit une décision fausse.
05
Permit, Deny et obligations
Une décision peut dépasser le oui ou non. Un Permit accompagné d'obligations autorise l'action à condition que le PEP applique certaines contraintes.
- Masquer un champ
- Permit, sans le champ marge.
- Limiter un volume
- Permit, 500 lignes au maximum.
- Journaliser fortement
- Permit, avec trace détaillée de la requête et du résultat.
- Interdire une destination
- Permit vers Reporting uniquement.
- Demander une validation externe
- Permit après approbation d'un humain désigné.
- Réduire le résultat
- Permit, agrégats seulement.
Une obligation n'a d'effet que si le PEP sait l'interpréter. Un PEP qui ne gère que Permit et Deny ignore les obligations : il faut alors choisir entre refuser par défaut et accepter un contrôle plus grossier.
06
Où placer le PEP ?
Il n'existe pas de proxy universel devant toutes les actions d'un agent. On construit plutôt une fabrique de PEP distribués, chacun adapté à son canal, qui interrogent tous le même PDP.
- API → API Gateway
- Contrôle de l'endpoint, de la méthode, des paramètres et du corps avant transmission. Voir sécuriser les API.
- MCP → gateway MCP / proxy d'outils
- Contrôle du serveur, de l'outil et des arguments de chaque tool call. Voir sécuriser les MCP d'un agent IA.
- RAG → data access layer / proxy
- Filtre les documents, chunks ou champs avant qu'ils n'entrent dans le contexte du modèle. Voir sécuriser le RAG.
- Application → SDK, proxy, sidecar
- Contrôle au plus près de la logique métier, là où l'objet manipulé est connu.
- Framework d'agent → tool broker
- Filtre les outils proposés à l'agent et les appels qu'il émet.
Chaque PEP n'est efficace que sur le trafic qui le traverse. La question d'architecture est donc toujours la même : par quel chemin l'agent pourrait-il atteindre la ressource sans passer par lui ? Les refus répétés qu'il journalise sont aussi un signal pour détecter un agent hors mandat.
07
Axiomatics dans cette architecture
Axiomatics est un exemple de plateforme d'autorisation externalisée. Dans l'architecture décrite ici, elle porte la logique de politique :
- Politiques et PAP
- Rédaction, gouvernance, test et publication des politiques.
- PDP
- Évaluation des demandes et décisions runtime, obligations comprises.
- Attributs via PIP
- Récupération des attributs nécessaires auprès des sources existantes.
- Modèles
- ABAC, PBAC et modèles hybrides combinant rôles, attributs et relations.
Axiomatics décide ; les PEP appliquent. Ce n'est ni un fournisseur d'identité, ni une IGA complète, ni une API Gateway, ni un produit de guardrails LLM. L'inspection des contenus et des comportements relève d'autres couches, par exemple AccuKnox, décrites dans l'architecture complète.
FAQ
Questions fréquentes
Qu'est-ce que l'autorisation fine pour un agent IA ?
C'est la capacité à décider, pour chaque action de l'agent, si cette identité peut exécuter cette action précise sur cette ressource précise dans ce contexte précis. La décision tient compte de l'utilisateur pour lequel l'agent agit, de l'agent lui-même, des paramètres de l'action, de la ressource et de l'environnement, et pas seulement du rôle du compte technique.
Quelle différence entre RBAC et ABAC ?
RBAC accorde des permissions à des rôles, puis des rôles à des identités. ABAC évalue des attributs du sujet, de la ressource, de l'action et de l'environnement au moment de la demande. RBAC répond bien à « qui a quel métier » ; ABAC permet d'exprimer « seulement ces champs, vers cette destination, pendant cette plage horaire ». Les deux se combinent souvent.
Qu'est-ce qu'un PDP ?
Le Policy Decision Point reçoit une demande d'autorisation, récupère si besoin des attributs complémentaires auprès des PIP, évalue les politiques et renvoie Permit ou Deny, éventuellement accompagné d'obligations. Il décide mais n'intercepte ni ne bloque aucun flux.
Qu'est-ce qu'un PEP ?
Le Policy Enforcement Point est le composant placé sur le chemin obligatoire entre l'agent et la ressource. Il intercepte l'action, construit la demande de décision, interroge le PDP, puis laisse passer, refuse ou transforme l'action selon la réponse et ses obligations.
Où placer le PEP pour un agent IA ?
Là où l'action ne peut pas l'éviter : API Gateway pour les API, gateway ou proxy MCP pour les outils, data access layer pour le RAG, SDK ou sidecar dans une application, tool broker dans le framework d'agent. Une architecture réelle combine généralement plusieurs PEP qui interrogent le même PDP.
OAuth suffit-il à sécuriser un agent ?
OAuth délègue un accès et prouve qu'un client détient un jeton portant certains scopes. Si les scopes exposés par l'API sont aussi fins que la mission, cela peut suffire pour cette API. Lorsque la mission est plus précise que les scopes disponibles (champs, volume, destination, finalité), une décision runtime complémentaire est nécessaire.
Quelle différence entre authentification et autorisation ?
L'authentification prouve qui agit : l'utilisateur, l'agent, le workload. L'autorisation décide si cette identité authentifiée peut effectuer une action donnée. Un agent parfaitement authentifié, avec un jeton valide, peut demander une action qui doit être refusée.
Peut-on combiner IGA et autorisation runtime ?
Oui. L'IGA gouverne qui possède quels rôles et habilitations, avec leurs revues et leur cycle de vie. L'autorisation runtime utilise ces informations comme attributs, via un PIP, et y ajoute le contexte de chaque demande. L'une ne remplace pas l'autre.
Continuer l'exploration
Votre agent possède-t-il plus de pouvoir que sa mission ne l'exige ?
Nous pouvons cartographier ses données, outils, API et actions pour identifier les points de contrôle réellement utiles.