Expand description
Tenant resolution for multi-tenant A2A servers.
TenantResolver extracts a tenant identifier from incoming requests,
enabling per-tenant routing, configuration, and resource isolation.
§Built-in resolvers
| Resolver | Strategy |
|---|---|
HeaderTenantResolver | Reads a configurable HTTP header (default: x-tenant-id) |
BearerTokenTenantResolver | Extracts Authorization: Bearer <token> and optionally maps it |
PathSegmentTenantResolver | Extracts a URL path segment by index |
§Example
use a2a_protocol_server::tenant_resolver::HeaderTenantResolver;
use a2a_protocol_server::CallContext;
let resolver = HeaderTenantResolver::default();
let ctx = CallContext::new("message/send")
.with_http_header("x-tenant-id", "acme-corp");
// resolver.resolve(&ctx) would return Some("acme-corp".into())Structs§
- Bearer
Token Tenant Resolver - Extracts a tenant ID from the
Authorization: Bearer <token>header. - Header
Tenant Resolver - Extracts a tenant ID from a configurable HTTP header.
- Path
Segment Tenant Resolver - Extracts a tenant ID from a URL path segment by index.
Traits§
- Tenant
Resolver - Trait for extracting a tenant identifier from incoming requests.