Middleware pattern
A2AServer server = A2AServer.builder()
.agent(myAgent)
.addInterceptor(new AuthzInterceptor(policy))
.build();Advertisement
Policy expressed once
'Users with role=finance can invoke agent=expense'. Not repeated in agent code. Config-driven.
Advertisement
Deny by default
Unlisted user gets denied. Fail closed, not open.