Beyond Least Privilege: Authority Provenance en het Capability Closure Problem in Agentic Systems
Een primair beveiligingsprobleem van autonome agents is niet alleen overmatig privilege. Het is het onvermogen van conventionele IAM om te bewijzen dat authority begrensd blijft, zowel verticaal over een intent-to-execution keten als horizontaal over samengestelde service capabilities.
Dit artikel ontwikkelt twee concepten: de Agentic Authority Provenance Chain (AAPC) voor verticale provenance, en de Capability Closure-formulering voor horizontale compositie. Beide worden formeel gedefinieerd en empirisch geïllustreerd aan de hand van de Eve-V case: een content-intelligence agent die opereert over meerdere onafhankelijke service authorities. De agentspecifieke bijdrage ligt in de toepassing en formalisering van de semantische-transformatieketen van menselijke intentie naar machine-effect, niet in een claim dat de compositie-formulering op zichzelf theoretisch nieuw is.
Problem statement
Een agent is geen passieve consument van een enkele API. Hij bezit een verzameling heterogene service authorities, memory, knowledge, compute, tools, execution, die hij sequentieel en samengesteld inzet om een doel te bereiken. De fundamentele vraag is niet welke scopes heeft de agent, maar:
Kan worden bewezen dat iedere door de agent geïnitieerde uitvoering uitsluitend authority uitoefent die aantoonbaar is afgeleid van de oorspronkelijke requester, of expliciet en controleerbaar is verhoogd via policy en approval?
Deze vraag reduceert niet tot identity, RBAC of OAuth scopes. Ze vereist een formeel model van hoe authority ontstaat, wordt begrensd, wordt verhoogd, wordt goedgekeurd en uiteindelijk wordt uitgeoefend.
Why IAM abstractions break under agency
Klassieke IAM redeneert over een enkele principal met een enkele set scopes, geëvalueerd door één policy decision point. Een agent doorbreekt deze aannames op vier manieren:
-
Meerdere principals. De requester, de agent, de workload, de approver en de executor zijn verschillende subjecten. Ze hoeven niet gelijk te zijn, maar elke overgang moet verklaarbaar zijn door een observeerbaar delegatie- of autorisatiemechanisme.
-
Meerdere policy domains. De agent opereert over UAMS, Knowledge, Ollama, Qdrant en een execution-plane. Elke service evalueert zijn eigen scopes onafhankelijk. Er is geen enkel PDP dat de samengestelde effecten ziet.
-
Semantische transformatie. Natuurlijke taal (benign user intent) wordt door planning en tool-selection getransformeerd in machine-acties. Deze transformatie is geen authorization transition, er is geen expliciete check dat de machine-actie binnen de oorspronkelijke intent valt.
-
Capability compositie (hypothese). Twee of meer individueel toegestane capabilities kunnen samen een effect produceren dat geen enkele service afzonderlijk autoriseert. Deze mogelijkheid is een formele consequentie van compositie; of die compositie in de Eve-V architectuur daadwerkelijk een ongeautoriseerd effect produceert, is een open empirische vraag (niet waargenomen).
Empirical Eve-V case
Eve-V is een content-intelligence agent die opereert over meerdere onafhankelijke service authorities:
| Service | Authority | Status |
|---|---|---|
| UAMS :8000 | MemoryAuthority (read/write) | partially established |
| Knowledge MCP :8007 | DataAuthority (read) | partially established |
| Ollama :11434 | ComputeAuthority (inference) | established |
| Qdrant | MemoryAuthority (vector) | established |
| DjimitFlo :3001 | ExecutionAuthority | not established (401) |
De kernobservatie is niet "Eve-V heeft weinig authority omdat DjimitFlo 401 retourneert". De correcte conclusie is:
De DjimitFlo execution authority is afwezig of onbeschikbaar, terwijl heterogene authority over andere services blijft bestaan.
Empirisch onderscheid (B3). De Eve-V case staat de volgende, strikt van elkaar gescheiden uitspraken toe:
- OBSERVED: heterogene service authorities bestaan (UAMS, Knowledge, Ollama, Qdrant).
- NOT OBSERVED: DjimitFlo execution authority.
- NOT VERIFIED: cross-service compositie wordt als één authorization object geëvalueerd.
- HYPOTHESIS: heterogene authorities kunnen door agentplanning samengestelde effecten produceren.
- NOT CLAIMED: een dergelijk ongeautoriseerd samengesteld effect is in Eve-V opgetreden.
De Eve-V case bewijst dus het bestaan van heterogene authority, niet emergent unauthorized authority. Dit is een cruciaal epistemisch onderscheid.
Eve-V bezit geen uniforme identity, maar een verzameling heterogene service authorities. Dat is geen simpel "credentials accumulation", het is een principtieel probleem:
effective authority = composition(service capabilities)
en dus potentieel:
Eff(A) ≠ union of independently evaluated permissions
omdat capability-compositie nieuwe effecten kan creëren die geen enkele service afzonderlijk autoriseert. De term "potentieel" is hier essentieel: dit is een formele consequentie van compositie, geen waargenomen feit.
Agentic Authority Provenance Chain
De AAPC modelleert de verticale keten van intent tot evidence:
Intent → Principal → Delegation → Policy → Approval → Execution → Evidence
Elke edge moet vijf eigenschappen behouden: principal integrity, authority attenuation, context integrity, semantic integrity en temporal integrity.
Formele definitie van een valide uitvoering. Principals worden per execution gebonden:
R_e = requester(s) relevant to execution e
A_e = agent/workload principal(s)
H_e = approver(s)
X_e = executing principal(s)
Authority is een expliciete relatie, geen ongedefinieerde set:
Permitted(p, c, r, k, t)
waar p = principal, c = capability, r = resource, k = security-relevante context, t = tijd.
Noodzakelijke veiligheidsconditie (niet equivalentie):
SecureExecution(e) ⇒
ProvenanceValid(e)
∧ CompositionAuthorized(e)
∧ SemanticTransformationBound(e)
met:
ProvenanceValid(R_e,A_e,H_e,e) =
Permitted(R_e, c, r, k, t)
∧ Delegated(R_e, A_e, e)
∧ PolicyPermits(e)
∧ ApprovalBound(H_e, e)
∧ ContextValid(e)
∧ TemporalValid(e)
De richting is ⇒ (noodzakelijk), niet ⇔. De omgekeerde richting, dat deze condities voldoende zijn voor security, is een conjecture en wordt hier niet geclaimd: de predicates karakteriseren niet aantoonbaar volledig "execution security" (geen integriteit van de policy-engine zelf, geen confidentiality/availability van het omringende systeem).
Primaire invariant (alleen ⊆ waar sets expliciet gedefinieerd zijn):
Eff(X_e) ⊆ Del(R_e,A_e) ⊆ Auth(R_e) [of] Eff(X_e) ⊆ App(H_e) bij expliciete elevation
waar Eff, Del, Auth en App als sets van gepermitteerde (capability, resource, context, tijd)-tuples worden begrepen, de verzameling van alle combinaties die de betreffende principal in execution e effectief mag uitoefenen, respectievelijk heeft gedelegeerd, bezit, of door approval heeft verkregen. De ⊆ is dan de verzameling-inclusie over deze tuple-sets. Een uitvoering is alleen valide wanneer de complete authority lineage aantoonbaar is.
Vertical authority provenance
Verticale provenance meet of authority correct wordt overgedragen door één transactieketen. De security property is niet Router.request_id == DjimitFlo.task_id, dat is slechts één mogelijke implementatie. De property is:
∃ immutable/reliable lineage:
OriginalIntent
→ AuthorizationContext
→ PolicyDecision
→ Approval
→ Execution
→ Evidence
In de Eve-V case is deze lineage niet geobserveerd binnen de geïnspecteerde scope. De Router retourneert alleen routing-metadata en staat bewust buiten de execution path. Zonder geauthenticeerd zicht op DjimitFlo kan niet worden uitgesloten dat correlatie elders ontstaat. De correcte classificatie is daarom CORRELATION_CONTINUITY_NOT_OBSERVED_WITHIN_SCOPE, niet een bevestigde gap.
Horizontal authority composition
Horizontale compositie meet authority die ontstaat door capability-compositie over meerdere systemen:
ServiceAuthority₁
+
ServiceAuthority₂
+
ServiceAuthority₃
↓
EmergentAgentCapability
De securityvraag wordt daardoor tweeledig:
Is every effective agent capability zowel provenance-preserving als composition-bounded?
Noodzakelijke veiligheidsconditie voor een secure agent: (niet equivalentie; sufficiency is conjecture, zie boven)
SecureAgent(A) ⇒
∀E:
ProvenanceValid(E)
∧ CompositionAuthorized(E)
∧ SemanticTransformationBound(E)
waar ProvenanceValid(E) en CompositionAuthorized(E) per execution e gebonden zijn aan principals R_e, A_e, H_e, X_e zoals in §Agentic Authority Provenance Chain. CompositionAuthorized is als volgt gedefinieerd:
CompositionAuthorized(E) =
EffectiveCompositeCapability(E)
⊆ ExplicitlyAuthorizedCapabilityEnvelope(E)
ExplicitlyAuthorizedCapabilityEnvelope(E) is operationeel de gesloten unie van effect-verzamelingen die individuele policy-decisions expliciet autoriseren. Elke waarneming van een samengesteld effect buiten die unie falsifieert H1. De envelope is dus vóór waarneming gedefinieerd, niet post-hoc.
Het CompositionAuthorized predicate, dat effectieve samengestelde capabilities binnen een expliciet geautoriseerde envelope houdt, is de agentspecifieke bijdrage van dit artikel en ontbreekt in klassieke RBAC/OAuth-analyse.
The Capability Closure Problem
Dit is een security proposition, geen nieuw theorem. Stel:
C = {c1, c2, ..., cn}
de afzonderlijk toegestane agent capabilities. Traditionele authorization redeneert grotendeels:
∀ci ∈ C: Authorized(ci)
Voor autonome agents is echter vereist:
∀x ∈ Closure(C): Authorized(x)
waar Closure(C) alle relevante effecten bevat die ontstaan door sequentiële of samengestelde toepassing van capabilities.
Security proposition (niet als nieuw theorem gepresenteerd):
Authorized(c1) ∧ Authorized(c2) ↛ Authorized(c1 ∘ c2)
waar c1 ∘ c2 een geordende capability-compositie is waarbij output, state change of effect van c1 invloed heeft op de preconditions, parameters, context of effectruimte van c2.
Autorisatie van elke individuele capability impliceert niet de autorisatie van de capability closure die door hun compositie wordt gegenereerd. Deze propositie bouwt voort op bekende niet-transitieve autorisatie en composite-operation problematiek. De agentspecifieke bijdrage van dit artikel ligt niet in de compositie zelf, maar in de semantische transformatie tussen menselijke intentie, agentplanning, toolselectie en uiteindelijk machine-effect.
Semantische transformatieketen:
I = human intent
P(I) = agent-generated plan
T(P) = selected tool/capability sequence
E(T) = resulting machine effect
De relevante authorization property is niet alleen Authorized(c1) ∧ Authorized(c2), maar:
AuthorizedIntent(I)
∧ AuthorizedPlan(P(I))
∧ AuthorizedComposition(T(P))
∧ AuthorizedEffect(E(T))
De intellectuele kern wordt dan:
Does authorization remain valid under semantic transformation and capability composition from human intent to machine effect?
De bijdrage is de toepassing en formalisering van deze semantische-transformatieketen voor agentic authorization, niet een claim dat de compositie-formulering op zichzelf theoretisch nieuw is.
Waarom agentic compositie het klassieke probleem verandert
De Capability Closure-formulering is verwant aan klassieke niet-transitieve autorisatie en composite-operation analyse. Het agentspecifieke element is niet de compositie zelf, maar de semantische-transformatie-dimensie: planning zet natuurlijke taal om in een effect dat aan de individuele authorization decisions ontsnapt. Die dimensie is de beperkte, verdedigbare originaliteit.
- Least privilege beperkt de set van capabilities, maar zegt niets over de closure die door compositie ontstaat.
- Confused deputy betreft een privileged intermediary die onbedoeld authority van een laag-geprivilegieerde requester versterkt. Agentic compositie generaliseert dit: de agent is zelf de deputy, en de compositie kan authority creëren die noch de requester noch de agent afzonderlijk bezat.
- Capability systems (ambient authority, object capabilities) beperken wat een object kan doen, maar modelleren geen semantische transformatie van intent naar effect.
- TOCTOU betreft state die verandert tussen check en use. Agentic compositie voegt een nieuwe dimensie toe: de effecten van eerdere capabilities veranderen de context waarin latere capabilities worden geëvalueerd.
- Reference monitors controleren individuele operaties, maar zien niet de samengestelde effecten over meerdere services.
- Delegated authorization (OAuth, token exchange) delegeert scopes, maar delegeert geen closure, de gedelegeerde authority is niet begrensd op samengestelde effecten.
De kern is dat agentic planning en tool-compositie een nieuwe effectruimte genereren die buiten de individuele autorisatiebeslissingen valt. Een voorbeeldcategorie (hier gepresenteerd als hypothesized compound capability, niet als empirisch aangetoond in Eve-V):
read knowledge
+ persistent memory write
+ model inference
+ external/tool action
= hypothesized compound capability
die mogelijk nergens als één authorization decision is beoordeeld. Of deze specifieke keten in de Eve-V architectuur daadwerkelijk een ongeautoriseerd effect produceert, is een open empirische vraag die een composition-test (T3-stijl) vereist.
Formal security invariants
Uit het model volgen acht invariants die controle herstellen:
- Identity invariant. Elke policy-relevante actie is toerekenbaar aan een gevalideerde principal.
- Authorization invariant. Authenticatie alleen impliceert geen onbeperkte executie-rechten.
- Policy invariant. Policy-beslissingen worden geëvalueerd vóór beschermde executie.
- Fail-closed invariant. Falen om een betrouwbaar besluit te nemen mag nooit stilletjes permission worden.
- Approval invariant. Acties die handmatige approval vereisen mogen niet executeren vóór geldige approval.
- Provenance invariant. Besluit-inputs en policy-versie zijn traceerbaar.
- Audit invariant. Het besluit en de resulterende executie zijn reconstructeerbaar.
- Composition invariant. Elke effectieve samengestelde capability valt binnen de expliciet geautoriseerde capability envelope.
Confused deputy reinterpretation for autonomous agents
De klassieke confused deputy is een privileged service die onbedoeld de authority van een laag-geprivilegieerde requester versterkt. Voor autonome agents wordt dit:
H1, Agentic confused deputy. De requester R bezit capability C niet; de agent A bezit C wel; R instrueert A om C uit te voeren; het systeem accepteert de operatie op basis van A's authority.
Indien waar: CONFUSED_DEPUTY_CONDITION = VERIFIED. Vervolgens moet worden bepaald of aanvullende policy-controls exploitatie voorkomen.
De agentic variant voegt aan de klassieke een semantische-transformatie-dimensie toe: de agent transformeert intent, en de compositie van zijn capabilities kan authority creëren die noch de requester noch de agent afzonderlijk bezat. Dit is semantic authority amplification, natuurlijke taal die door planning verandert in een higher-impact machine-actie zonder expliciete authorization transition.
Approval-to-execution binding
Handmatige approval is niet voldoende. De approval moet gebonden zijn aan het exacte object dat later wordt uitgevoerd. De sterke target invariant:
D = HASH(canonical(requester, capability, resource, parameters, context))
approval.digest == execution.digest
In de Eve-V case toont het approval-object request_data (JSON), request_type, risk_level, expires_at en approved_by. Maar representatie is geen enforcement. De aanwezigheid van request_data bewijst niet dat APPROVED_OBJECT == EXECUTED_OBJECT. De correcte classificatie is APPROVAL_BINDING = NOT_VERIFIED, niet een vulnerability.
Workload identity versus network identity
Een veelgemaakte fout is transportbeveiliging gelijkstellen aan application identity. In de Eve-V case:
- Network peer authentication: Tailscale versleutelt de overlay-verbinding en authenticeert peers op netwerkniveau.
- Transport confidentiality: de overlay biedt encrypted transport.
- Application authentication: ontbreekt op de publieke control-plane services.
- Workload identity: niet geobserveerd, er is geen cryptografisch workload-bound application identity bovenop het overlay-netwerk.
- Delegated authority: niet geobserveerd.
De correcte observatie is APPLICATION_LAYER_WORKLOAD_IDENTITY_NOT_OBSERVED. Het risico is dat netwerkvertrouwen impliciet als application trust wordt gebruikt: omdat Tailscale de peer authenticeert, wordt aangenomen dat de application-call legitiem is. Dat is een categorie-fout, network peer authentication is geen application-level delegated authority.
Architectural control model
De target-architectuur die de invariants herstelt:
Intent
↓
Authenticated Requester
↓
Explicit Delegation
↓
Capability Attenuation
↓
Policy Decision
↓
Bound Approval
↓
Immutable Execution Envelope
↓
Execution
↓
Tamper-evident Evidence
Een execution envelope moet conceptueel minimaal bevatten:
trace_id
requester_subject
caller_subject
delegation_id
capability
resource
parameter_digest
context_digest
policy_decision_id
approval_id
approval_expiry
execution_id
De parameter_digest en context_digest zijn cruciaal: ze binden de approval aan het exacte object dat wordt uitgevoerd, en maken APPROVED_OBJECT == EXECUTED_OBJECT verifieerbaar. De delegation_id maakt de verticale lineage reconstructeerbaar. De trace_id koppelt de horizontale compositie over services.
Falsifiable research hypotheses
Het model is falsifieerbaar. Elke hypothese heeft een expliciete falsificatieconditie:
H1, Capability closure is niet geautoriseerd. Falsificatie: toon een systeem waarin Closure(C) ⊆ ExplicitlyAuthorizedCapabilityEnvelope voor alle effectieve composities, waar de envelope operationeel is gedefinieerd als de gesloten unie van effect-verzamelingen die individuele policy-decisions expliciet autoriseren (§Horizontal authority composition). Bevestiging: vind een samengesteld effect buiten die vóór de waarneming gedefinieerde envelope.
H2, Verticale provenance is niet reconstructeerbaar. Falsificatie: reconstrueer een volledige intent-to-execution lineage met immutable evidence. Bevestiging: een incident-onderzoeker kan requester → approval → execution niet verbinden.
H3, Approval binding is niet verifieerbaar. Falsificatie: toon dat approval.digest == execution.digest geldt voor alle goedgekeurde executies. Bevestiging: parameters kunnen wijzigen na approval zonder nieuwe approval.
H4, Semantic authority amplification is mogelijk. Falsificatie: toon dat elke machine-actie binnen de oorspronkelijke intent valt zonder expliciete authorization transition. Bevestiging: benign intent kan door planning veranderen in een higher-impact actie.
Limitations and epistemic boundaries
Dit artikel claimt geen universaliteit. De Eve-V case is een empirical case study, geen bewijs voor alle agentic systemen. De beperkingen zijn expliciet:
-
Geen geauthenticeerde executie. De DjimitFlo execution authority is niet beschikbaar (401). Delegation, approval en execution predicates konden niet worden bewezen. De conclusie is
EVIDENCE_INSUFFICIENT, niet een bevestigde gap. -
Absence of evidence ≠ evidence of absence. Het ontbreken van een correlation artifact in de Router betekent niet dat correlatie nergens anders ontstaat. De classificatie is
CORRELATION_CONTINUITY_NOT_OBSERVED_WITHIN_SCOPE. -
Representatie ≠ enforcement. De aanwezigheid van
request_dataenexpires_atin het approval-object bewijst geen enforcement. Field presence is geen security property. -
Architectural plausibility ≠ evidence. De mogelijkheid van capability compositie is een formeel systeemrisico, geen bewezen exploitketen.
-
Netwerkvertrouwen ≠ application trust. Tailscale peer identity is geen application-level delegated authority.
Conclusion
Een primair beveiligingsprobleem van autonome agents is niet alleen overmatig privilege. Het is het onvermogen van conventionele IAM om te bewijzen dat authority begrensd blijft, zowel verticaal over een intent-to-execution keten als horizontaal over samengestelde service capabilities.
De centrale propositie is:
In een agentic system impliceert autorisatie van elke individuele capability niet de autorisatie van de capability closure die door hun compositie wordt gegenereerd.
Deze propositie bouwt voort op bekende niet-transitieve autorisatie en composite-operation problematiek. De agentspecifieke bijdrage van dit artikel is niet de compositie-formulering zelf, maar de toepassing en formalisering van de semantische-transformatieketen: van menselijke intentie via agentplanning en toolselectie naar machine-effect. Het CompositionAuthorized predicate, dat effectieve samengestelde capabilities binnen een expliciet geautoriseerde envelope houdt, en het execution-envelope-met-digest controlemodel zijn de concrete bijdragen.
De Eve-V case toont OBSERVED dat heterogene service authorities bestaan; de samengestelde effecten die daaruit kunnen ontstaan, zijn hypothese en niet waargenomen. De oplossing is niet meer scopes of meer logging, maar een execution envelope die verticale provenance en horizontale compositie beide begrenst.
AI & Security Intelligence
Wekelijkse nieuwsbrief met AI updates, security alerts en compliance inzichten, direct in uw inbox.
Security & AI Operating Model
Advisory met executiekracht
Van BIO2 en NIS2 tot EU AI Act, embedded in uw operating model, niet als extern project. Maandelijks opzegbaar, met assessments als bewijsvoering.