Skip to content

feat(auth): enforce web capabilities in LiveView - #164

Draft
djwhitt wants to merge 8 commits into
oidc-web-loginfrom
oidc-web-capabilities
Draft

feat(auth): enforce web capabilities in LiveView#164
djwhitt wants to merge 8 commits into
oidc-web-loginfrom
oidc-web-capabilities

Conversation

@djwhitt

@djwhitt djwhitt commented Aug 15, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • require web access for browser entry, LiveView mount, and reconnect
  • require query capability for query/table routes and operations
  • check catalog-management and platform-operation capabilities inside every mutating server event before parsing or side effects
  • expire long-lived sockets at the assertion boundary and recheck events, info, and async results
  • hide unavailable controls without relying on the client for authorization and preserve static operator behavior

Tracker: T-235

Validation

  • ../bin/x mix ci
  • ../bin/test after syncing latest main (1,112 passed; 184 excluded)
  • ../bin/x mix dialyzer
  • real encrypted-session route/event tests and final adversarial security review

Stack

Depends on #163. This is layer 7 of stack #151.

Stack managed with GitHub Stacks CLI.

Require web access for browser sessions and reconnects, query capability for query and table routes, catalog management for catalog mutations, and platform operation for fleet actions. Recheck normalized contexts before every server-side event and asynchronous result, expire long-lived sockets at the assertion boundary, and hide unavailable controls without relying on the UI for authorization.

Preserve static-mode operator behavior and harden fleet target eligibility against crafted events.
@djwhitt djwhitt changed the title oidc web capabilities feat(auth): enforce web capabilities in LiveView Aug 15, 2026
Recheck the credential-derived static session marker on LiveView events, messages, async results, and a bounded periodic timer so password rotation revokes already-connected operator sockets. Update the architecture security posture for explicit static and OIDC modes.
@djwhitt
djwhitt marked this pull request as draft August 16, 2026 00:09
Carry the complete authentication hardening, updated lower stack, and current origin/main into the published LiveView capability layer without rewriting existing commits.
Propagate OIDC error-callback transaction consumption through the published LiveView capability layer without rewriting existing commits.
Propagate validated deployment settings, configurable scopes, independent encrypted transaction cookies, and the CSRF-protected logout control through the published LiveView capability layer without rewriting existing commits.

Tests: ../bin/x mix ci
Tests: ../bin/test
Tests: ../bin/x mix dialyzer
Document that local OIDC logout clears both the normalized identity session and every pending browser login transaction cookie.

Tests: ../bin/x mix ci

Refs T-234 and PL-27.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant