This extension defines how to enable Iron Book's zero trust policy-based access control for agents.
https://github.com/identitymachines/a2a_ironbook
The URI of this extension is https://github.com/identitymachines/ironbook-a2a-extension/v1.
This is the only URI accepted for this extension.
Messages from the client agent MUST include the following metadata fields:
- Agent DID:
https://github.com/identitymachines/ironbook-a2a-extension/v1/agent-did - Auth token:
https://github.com/identitymachines/ironbook-a2a-extension/v1/auth-token - Context:
https://github.com/identitymachines/ironbook-a2a-extension/v1/context
If a client agent wishes to send a message to a server agent that enforces Iron Book policies, the client agent MUST:
- Activate the IronBook A2A extension.
- Use the Iron Book SDK or portal to register the agent.
- Use the Iron Book SDK to get an auth token.
- Include the Message metadata fields.
The server agent MUST:
- Validate that the Message metadata fields are provided.
- If fields are missing, it MUST return an error.
- Use the Iron Book SDK to submit a policy decision request.
- If allowed, the Message will be processed.
- If denied, it MUST return an error.
Clients indicate their desire to receive traceability on response by specifying
the Extension URI via the transport-defined extension
activation mechanism. For JSON-RPC and HTTP transports, this is indicated via
the X-A2A-Extensions HTTP header. For gRPC, this is indicated via the
X-A2A-Extensions metadata value.