Add app home Spaces shell and session diagnostics profile menu
Post-login lands on Spaces empty state instead of a principal dump. Profile menu exposes Session details with identity, tenant, roles/groups, and authz diagnostics for operator refinement (CSOC-WP-0004 T01/T07).
This commit is contained in:
parent
8169102866
commit
422cd613f6
10 changed files with 404 additions and 88 deletions
|
|
@ -59,9 +59,13 @@ def establish_session(request: HttpRequest, claims: IdentityClaims) -> Member:
|
|||
member.last_login_at = timezone.now()
|
||||
member.save()
|
||||
|
||||
# Stash provenance for debugging shell (no secrets)
|
||||
# Stash non-secret claim provenance for account diagnostics (T07)
|
||||
request.session["user_engine_source"] = link.source
|
||||
request.session["user_engine_user_id"] = link.user_id
|
||||
request.session["identity_groups"] = list(claims.groups)
|
||||
request.session["identity_roles"] = list(claims.roles)
|
||||
request.session["identity_principal_type"] = claims.principal_type or "human"
|
||||
request.session["identity_assurance"] = dict(claims.assurance or {})
|
||||
|
||||
login(request, user, backend="django.contrib.auth.backends.ModelBackend")
|
||||
return member
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue