Transaction Tokens
Orka implements a strict, vendor-neutral OAuth Transaction Token profile for request governance. Transaction tokens are not downstream resource credentials.
Profile
Configure the canonical profile only:
controller:
contextToken:
profile: transaction-token
issuer: https://transactions.example.test
audience: orka
headers: Txn-Token
authzMode: enforce
The token must be an RS256 JWT with typ: txntoken+jwt, a matching issuer/audience, valid time claims, and non-empty sub, exp, iat, txn, scope, and req_wl claims. Txn-Token is the default raw header. Authorization: Bearer is opt-in so ServiceAccount and OIDC bearer authentication can coexist.
Governance retained by Orka
- operation-scope authorization and signed
tctxconstraints - immutable
spec.requestedByandspec.transactionprovenance - safe transaction labels, annotations, and context digests
- child scope subset validation
- owner-referenced Secrets for delegated child tokens
- request-time propagation and fail-closed replacement
- credential redaction from status, events, logs, metrics, errors, and Tool results
Default scopes
When authorization is enabled, Orka defaults to operation-specific scopes such as orka:tasks:create, orka:tasks:get, orka:tasks:list, orka:tasks:delete, orka:tools:read, orka:tools:use, orka:providers:use, orka:agents:read, orka:agents:write, orka:memory:read, orka:memory:write, orka:sessions:read, orka:sessions:write, orka:security:read, orka:security:write, orka:monitors:read, orka:monitors:write, orka:monitors:operate, orka:skills:read, and orka:skills:write. Using credential-bearing Secrets or minting ServiceAccount tokens for outbound access requires orka:secrets:credentials:read. Every default can be replaced with its --context-token-*-scopes flag or matching environment/Helm value.
Exact TTS endpoint
controller:
contextToken:
tts:
endpoint: https://transactions.example.test/oauth/token
audience: orka
tokenSource: incoming
childScope: orka:agents:run
outboundScope: orka:tools:http
Equivalent flags and environment variables are --context-token-tts-endpoint and ORKA_CONTEXT_TOKEN_TTS_ENDPOINT. The value is the exact OAuth endpoint; Orka does not append a path.
Transaction-token TTS calls use RFC 8693, request urn:ietf:params:oauth:token-type:txn_token, and require a matching issued_token_type plus token_type=N_A.
Provider integrations
Provider installation and live tests are out of tree. See the Kontxt integration repository and the agentgateway integration repository.