TR AuthZ Plugin
AuthZ resolver plugin that resolves tenant hierarchy via TenantResolverClient. Delegates all tenant operations to the tenant-resolver module instead of accessing Resource Group directly.
How It Works
- Tenant resolution — extracts
tenant_idfromTenantContext.root_idorsubject.properties["tenant_id"] - Hierarchy query — calls
TenantResolverClient::get_descendants(tenant_id, {barrier_mode: Respect}). Barrier filtering is handled by tenant-resolver internally. - Predicate generation — returns
In(owner_tenant_id, [visible_tenant_ids])for tenant scoping, plus optionalInGroup/InGroupSubtreepredicates when group context is present in the request
Configuration
modules:
tr_authz_plugin:
config:
vendor: "hyperspot"
priority: 50 # Set lower than static-authz (100) to take precedence
Dependencies
tenant-resolver-sdk—TenantResolverClienttrait for tenant hierarchy queriesauthz-resolver-sdk—AuthZResolverPluginClienttrait, predicate typestypes-registry-sdk— GTS plugin instance registration