Authority Binding Matrix (DPoP / mTLS) — AU2/AU3

All values deterministic and sorted by flow, tenant, environment.

Enforcement Matrix

FlowTenant scope requiredBindingNonce policyAudience rulesNotes
device_codetenant required; env optionalDPoP (ECDSA P-256)nonce TTL 120s; single-use; clock skew ±30saud must match service; reject wildcardOffline: tokens minted against cached JWKS; nonce list capped 1024 entries
auth_codetenant required; env requiredmTLS (SPIFFE)n/a (channel bound)aud == service; azp == client; enforce PKCESupports delegated authz; cert SAN must match client_id
client_credentialstenant required; env optionalDPoP (Ed25519) or mTLSnonce TTL 300s; rotate per tokenaud == service; forbid multi-audienceUse mTLS when hardware root is available; else DPoP fallback

DPoP Requirements

mTLS Requirements

Negative-path examples