feat(audit): log successful JWT auth with subject, acting_party, roles #21

Merged
rock merged 1 commits from feat/audit-trail into main 2026-09-09 22:38:02 +00:00
Owner

Add audit trail for authenticated API requests.

Changes

  • Add auth ok info log after JWT validation passes
  • Export ClaimString/ClaimStringSlice from identity package
  • Log fields: subject, acting_party, roles/permissions, path, method

Log format

{"level":"info","message":"auth ok","extra":{"subject":"2213aa...","acting_party":"portfolio-agent","roles":"llm:inference,memory:read","path":"/v1/chat/completions","method":"POST"}}

Why

Gateway only logged auth failures — no audit trail for who accessed LLM endpoints. Required for cluster access auditing.

Complements existing X-Forwarded-User header injection (already complete).

Add audit trail for authenticated API requests. ## Changes - Add `auth ok` info log after JWT validation passes - Export `ClaimString`/`ClaimStringSlice` from identity package - Log fields: subject, acting_party, roles/permissions, path, method ## Log format ```json {"level":"info","message":"auth ok","extra":{"subject":"2213aa...","acting_party":"portfolio-agent","roles":"llm:inference,memory:read","path":"/v1/chat/completions","method":"POST"}} ``` ## Why Gateway only logged auth failures — no audit trail for who accessed LLM endpoints. Required for cluster access auditing. Complements existing X-Forwarded-User header injection (already complete).
rock added 1 commit 2026-09-09 19:34:28 +00:00
- Add 'auth ok' info log after JWT validation passes
- Export ClaimString/ClaimStringSlice from identity package
- Log fields: subject, acting_party, roles/permissions, path, method
- Complements existing 'auth failed' error logs for full audit trail
rock merged commit e20e3f7be3 into main 2026-09-09 22:38:02 +00:00
rock deleted branch feat/audit-trail 2026-09-09 22:38:06 +00:00
Sign in to join this conversation.