Preflight Checklist
Problem Description
This issue tracks the implementation of native browser sessions in Dex. Currently, Dex operates statelessly regarding the browser, relying on refresh tokens for long-term access. To support standard OIDC features like SSO, prompt handling, and improved UX, we propose introducing a server-side session entity coupled with encrypted browser cookies.
Implementation
| # |
Name |
Link |
Merged |
| 0 |
DEP: Auth Sessions |
#4561 |
✅ |
| 1 |
UserIdentity CRUD |
#4643 |
✅ |
| 2 |
Create UserIdentity on login and persist users' consent |
#4645 |
✅ |
| 3 |
AuthSessions CRUD |
#4646 |
✅ |
| 4 |
TOTP support |
#3712 |
✅ |
| 5 |
Create AuthSessions and set cookies |
#4650 |
✅ |
| 6 |
auth_time, prompt, max_age |
#4662 |
✅ |
| 7 |
AuthSessions GC |
#4667 |
✅ |
| 8 |
id_token_hint |
#4670 |
✅ |
| 9 |
OIDC RP-Initiated logout |
#4674 |
✅ |
| 10 |
Protobuf session cookie |
#4675 |
✅ |
| 11 |
Cookies encryption |
#4676 |
✅ |
| 12 |
New home page for sessions |
#4677 |
✅ |
| 13 |
prompt_type=select_account |
#4678 |
✅ |
| 14 |
Upstream refresh logic |
#4703 |
➖ |
| 15 |
WebAuthn support |
#4704 |
✅ |
| 16 |
Add SSO |
#4705 |
✅ |
| 17 |
More tests |
#4731 |
✅ |
| 18 |
Logout confirmation |
#4734 |
➖ |
Proposed Solution
This enhancement aims to bridge the gap in OIDC conformance and enable the following capabilities.
OIDC Features & Logic
User Experience & Lifecycle
Alternatives Considered
No response
Additional Information
Relates Issues/PRs:
-
Remember Me:
-
ID Token Hint:
-
Logout:
-
2FA:
-
prompt:
-
max_age + auth_time:
Preflight Checklist
Problem Description
This issue tracks the implementation of native browser sessions in Dex. Currently, Dex operates statelessly regarding the browser, relying on refresh tokens for long-term access. To support standard OIDC features like SSO, prompt handling, and improved UX, we propose introducing a server-side session entity coupled with encrypted browser cookies.
Implementation
Proposed Solution
This enhancement aims to bridge the gap in OIDC conformance and enable the following capabilities.
OIDC Features & Logic
Single Sign-On (SSO)
Prompt Parameter Handling
ID Token Hint
User Experience & Lifecycle
Remember Me
Logout
Security & MFA Foundation
Alternatives Considered
No response
Additional Information
Relates Issues/PRs:
Remember Me:
ID Token Hint:
Logout:
2FA:
prompt:
max_age + auth_time: