Commit Graph

299 Commits

Author SHA1 Message Date
Tonkku
14c0c91035 Support MSC4198 login_hint in account management uri 2026-02-23 13:06:59 +02:00
Quentin Gliech
56ce9ccd1c Simplify the consent screen (#5310) 2025-12-03 14:22:14 +01:00
Quentin Gliech
ff6b25061e Get the display name of the Matrix user on the consent screens 2025-12-02 17:51:23 +01:00
Quentin Gliech
a56482cf60 Merge branch 'quenting/upstream-oauth/better-conflict-options' into quenting/upstream-oauth/skip-interactive 2025-11-28 18:08:09 +01:00
Quentin Gliech
d38662e395 Option to skip confirmation when registering through an upstream OAuth provider 2025-11-28 15:51:43 +01:00
Quentin Gliech
f97f56ed11 Add more options to deal with localpart conflicts on upstream OAuth 2.0 logins 2025-11-28 10:53:28 +01:00
Quentin Gliech
aeaf63b001 Unify registrations for local passwords and upstream OAuth registrations (#5281) 2025-11-27 16:13:03 +01:00
Quentin Gliech
c9b89c2f8d Store upstream OAuth sessions on user registrations
This will allow us creating user registrations from upstream OAuth auth
sessions
2025-11-21 19:31:37 +01:00
Olivier 'reivilibre
78db4a11fe Use NonZeroU64 2025-11-06 15:01:49 +00:00
Olivier 'reivilibre
dc535d7451 Add configuration for session limiting 2025-11-06 10:12:14 +00:00
Olivier 'reivilibre
ce943150bc Merge branch 'main' into rei/pat_devicesync 2025-10-22 14:27:40 +01:00
Olivier 'reivilibre
a5ea99fc4c Relax the validity check of the token actor 2025-10-22 13:15:12 +01:00
Olivier 'reivilibre
cfd8545b70 When adding or revoking personal sessions, schedule needed device syncs 2025-10-22 11:50:27 +01:00
reivilibre
56e6c5c919 Add storage for Personal Access Tokens (#5106)
Defines a token format for PATs and implements the base storage functionality for PATs and 'Personal Sessions' which are conceptually the parent containers of PATs.

Personal Sessions survive across regenerations of PATs and are the entities associated with the device ID. In virtually every way they are functionally the same as Compat or OAuth2 Sessions.
2025-10-09 13:07:41 +01:00
Olivier 'reivilibre
b9e1cdb554 Support OAuth2 clients as owners of personal sessions 2025-10-07 19:54:59 +01:00
Quentin Gliech
28e573b400 Add a configuration option to make email optional for password registration 2025-10-07 17:28:01 +02:00
Olivier 'reivilibre
293271912d data model: Add personal sessions with mpt_ prefix 2025-10-07 16:08:43 +01:00
Quentin Gliech
0f5dcc3c39 Inject the version in the app state 2025-10-03 11:41:22 +02:00
Quentin Gliech
a2172a02ba Surface the user guest flag in the admin API 2025-09-15 12:51:00 +02:00
Quentin Gliech
9ab64403dd Simplify handling of login hints 2025-08-18 16:48:21 +02:00
Quentin Gliech
76f9b8657e Remove unnecessary crate-level comment 2025-08-18 16:48:04 +02:00
Quentin Gliech
7253ca69b0 Merge remote-tracking branch 'origin/main' into feat/login_hint_with_email 2025-08-18 16:43:00 +02:00
Quentin Gliech
8dd096ce60 Fix a few more clippy lints 2025-08-18 10:45:20 +02:00
Quentin Gliech
bef50474ab Un-hide a few elidded lifetimes 2025-08-18 10:35:28 +02:00
Quentin Gliech
78933acb3c Collapse a few nested if now that we have if let chains 2025-08-18 10:29:30 +02:00
mcalinghee
8bad68cc34 Merge branch 'main' into feat/login_hint_with_email 2025-08-05 17:02:14 +02:00
Quentin Gliech
4d83fcb25e Merge remote-tracking branch 'origin/main' into quenting/stable-api 2025-08-04 16:38:49 +02:00
mcalinghee
1e2bf7f2f3 use of static RNG and MockClock in tests 2025-07-31 12:48:16 +02:00
mcalinghee
a45a1d7f73 move Clock/MockClock/SystemClock/BoxClock/BoxRng to mas-data-model : format 2025-07-31 12:35:56 +02:00
mcalinghee
9fa91b9524 move Clock/MockClock/SystemClock/BoxClock/BoxRng to mas-data-model : correct documentation 2025-07-31 12:34:01 +02:00
mcalinghee
062f5aced7 move Clock/MockClock/SystemClock/BoxClock/BoxRng to mas-data-model 2025-07-31 11:17:33 +02:00
mcalinghee
70cf833f0d use of login_with_email_allowed at caller level 2025-07-30 15:19:57 +02:00
mcalinghee
0e79ed5268 rename Login:EMAIL to Login::Email + remove use of email prefix 2025-07-30 15:19:57 +02:00
mcalinghee
929c14a6aa display email login_hint when login_with_email_allowed is activated 2025-07-30 15:19:57 +02:00
olivier
ad1e35d651 remove unused function 2025-07-21 10:19:57 +02:00
olivier
64b3b1b2a5 fix rust style 2025-07-21 09:52:24 +02:00
mcalinghee
a0e320b994 rename is_forced to is_forced_or_required 2025-07-21 09:52:24 +02:00
mcalinghee
f78e2c38f5 use of UpstreamOAuthProviderLocalpartPreference 2025-07-21 09:52:24 +02:00
mcalinghee
1886e73e40 allow importing existing users when the localpart matches in upstream OAuth 2.0 logins 2025-07-21 09:52:24 +02:00
Quentin Gliech
e8627166a9 Log out oauth & compat sessions when receiving a backchannel logout request 2025-07-04 16:27:10 +02:00
Quentin Gliech
db8c557f81 Backchannel logout behavior settings on upstream providers 2025-07-04 16:27:10 +02:00
Quentin Gliech
5b7bf232d6 Record the decoded ID token claims on upstream auth sessions 2025-07-04 16:27:09 +02:00
Quentin Gliech
2fe439529f data-model: make the device emit both stable and unstable scope tokens 2025-06-13 15:42:57 +02:00
Quentin Gliech
6421d9d1f5 Add license headers in most files that missed them 2025-06-12 11:01:07 +02:00
Quentin Gliech
52b0a9b2ba Update license headers to match the actual license 2025-06-12 10:32:16 +02:00
Quentin Gliech
69e3001966 Define all the dependencies at the workspace level 2025-06-10 14:25:38 +02:00
Quentin Gliech
642c8ba508 Support for experimental plan management tab in UI (#4549) 2025-06-10 14:14:24 +02:00
Hugh Nimmo-Smith
a127136384 Make plan_management_iframe_uri be a String not URL 2025-06-06 10:31:45 +01:00
Quentin Gliech
dcef4bcf3f Add config flag to require registration tokens for password registrations 2025-06-03 17:42:53 +02:00
Quentin Gliech
e28221ac49 Data model and repository for user registration tokens 2025-06-03 17:42:52 +02:00