Why: provide service-side canonical login/refresh orchestration for session-based web auth. What: add session contracts, refresh token codec with provider-agnostic secret boundary, grpc session methods, DI wiring, tests, and docs. Rule: preserve thalos identity ownership and keep transport adapters at service edge.
1.1 KiB
1.1 KiB
Session Runtime Contract
Canonical Internal gRPC Operations
IdentityRuntime now exposes the canonical session operations consumed by thalos-bff:
StartIdentitySessionRefreshIdentitySessionIssueIdentityToken(compatibility)EvaluateIdentityPolicy(policy guardrail)
Session Flow
- BFF calls
StartIdentitySessionwith subject/tenant/provider/external token. - Service issues access token through existing token orchestration.
- Service generates refresh token through provider-agnostic session token codec.
- BFF calls
RefreshIdentitySessionwith refresh token. - Service validates refresh token signature/expiry and reissues session tokens.
Provider-Agnostic Secret Boundary
Session refresh token signing is bound to IIdentitySecretMaterialProvider.
- Contract is provider-neutral.
- Runtime binding is configuration-based by default.
- Vault/cloud/env adapters can be swapped at DI boundaries without changing use-case code.
Configuration Keys
ThalosIdentity:Secrets:SessionSigningThalosIdentity:Secrets:Default(fallback)