Add support for OAuth login #1719

Merged
ginger merged 50 commits from ginger/oauth into main 2026-06-29 13:53:50 +00:00

50 commits

Author SHA1 Message Date
52026bb0f1
chore: Formatting
Some checks failed
Checks / Changelog / Check changelog is added (pull_request_target) Successful in 6s
Documentation / Build and Deploy Documentation (pull_request) Successful in 59s
Checks / Prek / Check changed files (pull_request) Successful in 5s
Checks / Prek / Pre-commit & Formatting (pull_request) Successful in 1m2s
Update flake hashes / update-flake-hashes (pull_request) Successful in 1m9s
Checks / Prek / Clippy and Cargo Tests (pull_request) Successful in 10m21s
Checks / Prek / Check changed files (push) Successful in 5s
Checks / Prek / Pre-commit & Formatting (push) Successful in 1m5s
Documentation / Build and Deploy Documentation (push) Successful in 1m10s
Release Docker Image / Build linux-amd64 (release) (push) Failing after 2m53s
Checks / Prek / Clippy and Cargo Tests (push) Successful in 8m29s
Release Docker Image / Build linux-arm64 (release) (push) Successful in 11m17s
Release Docker Image / Create Multi-arch Release Manifest (push) Has been skipped
Release Docker Image / Build linux-amd64 (max-perf) (push) Has been skipped
Release Docker Image / Build linux-arm64 (max-perf) (push) Has been skipped
Release Docker Image / Create Max-Perf Manifest (push) Has been skipped
Release Docker Image / Mirror Images (push) Has been skipped
Release Docker Image / Release Binaries (push) Has been skipped
2026-06-29 09:41:59 -04:00
aed8e7d769
fix: Adjust error code 2026-06-29 09:35:51 -04:00
32fb6f247a
fix: Use a LRU cache for storing pending auth code grants 2026-06-29 09:35:51 -04:00
90e14abecb
fix: Spacing 2026-06-29 09:35:51 -04:00
6ced2511e4
chore: Clippy fixes 2026-06-29 09:35:51 -04:00
93407ade03
fix: Accessibility improvements 2026-06-29 09:35:51 -04:00
6742d9237a
fix: More CSS tweaks 2026-06-29 09:35:51 -04:00
a32c7d0d9a
fix: Set correct default for registration terms config section 2026-06-29 09:35:51 -04:00
761a6a53d0
fix: Check for existing device when creating oauth session 2026-06-29 09:35:51 -04:00
c56c035c15
fix: Use RFC-compliant error responses for OAuth endpoints 2026-06-29 09:35:51 -04:00
c804bf5780
fix: Force trusted flow UI for first-run registration 2026-06-29 09:35:51 -04:00
b87afeef80
fix: Panic when trying to check an unknown UIAA stage type 2026-06-29 09:35:51 -04:00
d0c7a62ce7
fix: Use the right error code for CAPTCHA errors 2026-06-29 09:35:50 -04:00
47582d1922
refactor: Update logic for checking if a username is available 2026-06-29 09:35:50 -04:00
36a30f16b1
fix: CSS adjustments 2026-06-29 09:35:50 -04:00
52ec6bc6da
fix: Adjust error codes to comply with MSC4190 2026-06-29 09:35:50 -04:00
74788dcb19
feat: Mark spec version 1.15 as supported 2026-06-29 09:35:50 -04:00
b35b72c34a
feat: Add a page with some information about the server 2026-06-29 09:35:50 -04:00
c1fc76040a
fix: Correct config file example section name 2026-06-29 09:35:50 -04:00
d1449d6575
chore: My Giant Future 2026-06-29 09:35:50 -04:00
9fdeb61c1a
feat: Improve account panel UI for locked and suspended accounts 2026-06-29 09:35:50 -04:00
7c7d6762e2
fix: Include query parameters in link back to login on register page 2026-06-29 09:35:50 -04:00
eda46d63a8
fix: CSS tweaks 2026-06-29 09:35:50 -04:00
9fc9063c83
feat: Improve registration UI in first-run mode 2026-06-29 09:35:50 -04:00
430347fc66
fix: Minor wording improvements 2026-06-29 09:35:50 -04:00
9df5c68d3c
fix: Set default for allow_deactivation 2026-06-29 09:35:50 -04:00
3ca068c985
fix: Fix registration terms example in config 2026-06-29 09:35:50 -04:00
138ec05cf2
feat: Implement support for prompt=create in the authorization code flow 2026-06-29 09:35:50 -04:00
c7e5c8df22
fix: Don't let logged-in users access the registration page 2026-06-29 09:35:50 -04:00
91afbd122f
feat: Allow self-service deactivation to be disabled 2026-06-29 09:35:50 -04:00
daaf09cb26
refactor: Use more consistent terminology for email validation pages 2026-06-29 09:35:50 -04:00
e8d6fa565e
feat: Add support for registering accounts with the web UI 2026-06-29 09:35:50 -04:00
47af5d3a39
refactor: Change template context to allow using a CSP nonce 2026-06-29 09:35:49 -04:00
63b5fd04be
fix: Minor CSS improvements 2026-06-29 09:35:49 -04:00
d59a5c63f9
fix: Remove errant whitespace in device details 2026-06-29 09:35:48 -04:00
16aaeae21c
chore: News fragment 2026-06-29 09:35:48 -04:00
e60310eacc
feat: Allow configuring the OAuth compatibility mode 2026-06-29 09:35:48 -04:00
7b98ae54b5
fix: Use button styling for account management link on index page 2026-06-29 09:35:48 -04:00
d67d6ca895
fix: Use the right text color on input elements 2026-06-29 09:35:48 -04:00
86d9e9e6a9
feat: Add support for account management deeplinks 2026-06-29 09:35:48 -04:00
b37480d6b2
fix: Return the correct error code for expired access tokens 2026-06-29 09:35:48 -04:00
0d806a2038
feat: Add a page for viewing a device's details 2026-06-29 09:35:48 -04:00
19700a081e
fix: Use SameSite=Lax for session cookie 2026-06-29 09:35:48 -04:00
ed1b175fa4
feat: Allow devices to be removed from the account panel 2026-06-29 09:35:48 -04:00
a91fc7041a
feat: Implement oauth token revocation 2026-06-29 09:35:48 -04:00
18c59e036f
chore: Clippy fixes 2026-06-29 09:35:48 -04:00
df3f646c92
feat: Implement oauth auth code and refresh token flows 2026-06-29 09:35:48 -04:00
fb6e5d2838
chore: Clippy fixes 2026-06-29 09:35:48 -04:00
33be65a865
feat: Implement a web-based account management dashboard 2026-06-29 09:35:45 -04:00
975ec24167
feat: Implement oauth service and client registration 2026-06-29 09:03:54 -04:00