Quentin Gliech
d03dd41345
admin: add operation IDs on user operations & other improvements
...
This also documents better the user list operation parameters
2024-08-01 15:17:14 +02:00
Quentin Gliech
78e988b7cc
Tweak the schema generation and use a common definition for ULIDs
2024-08-01 15:17:14 +02:00
Quentin Gliech
cdecac735e
Tweak the schema to use summary instead of description and add tags
2024-08-01 15:17:14 +02:00
Quentin Gliech
3f947025e2
Host a Swagger UI both in the static documentation and by the server
2024-08-01 15:17:14 +02:00
dependabot[bot]
5edeb59ef3
build(deps): bump zxcvbn from 3.0.1 to 3.1.0
...
Bumps [zxcvbn](https://github.com/shssoichiro/zxcvbn-rs ) from 3.0.1 to 3.1.0.
- [Changelog](https://github.com/shssoichiro/zxcvbn-rs/blob/master/CHANGELOG.md )
- [Commits](https://github.com/shssoichiro/zxcvbn-rs/compare/v3.0.1...v3.1.0 )
---
updated-dependencies:
- dependency-name: zxcvbn
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
2024-07-30 11:51:20 +02:00
Olivier 'reivilibre
8737d6f89b
graphql: Expose CAPTCHA config and whether password registration is enabled
2024-07-26 13:02:58 +01:00
Quentin Gliech
4a275fa4b9
Call retain_recent periodically on rate limiters
2024-07-26 13:56:45 +02:00
Quentin Gliech
e25c170403
Rate-limit password-based login attempts
2024-07-26 13:56:45 +02:00
Quentin Gliech
f5b4caf520
admin: add APIs to list and get users
2024-07-26 11:36:55 +02:00
Quentin Gliech
c177233b33
Define common response types for the admin API
...
This adds a Single and a Paginated response type, which have links to the next, previous, first and last pages.
2024-07-26 11:36:55 +02:00
Quentin Gliech
27ca7ec108
Add an extractor to check for credentails in the admin API
2024-07-26 11:36:55 +02:00
Quentin Gliech
43ff6dc9d3
doc: auto-generate the API schema in the documentation
2024-07-26 11:36:55 +02:00
Quentin Gliech
f4f61f0d51
handlers: bootstrap the admin API router
2024-07-26 11:36:55 +02:00
Quentin Gliech
144de0deb2
storage: freeze the error type on BoxRepository
...
This avoids having to deal with traits bounds everywhere. It also moves
the `boxed()` method to the PgRepository, because it was unnecessary to
keep it on the `Repository` trait
2024-07-26 11:36:55 +02:00
Olivier 'reivilibre
48c4c34e88
Remove the server-side rendered account recovery 'finish' form
...
Replace with the React frontend form
2024-07-26 10:20:32 +01:00
Olivier 'reivilibre
c83e052e7f
graphql: use NoSuchRecoveryTicket when link is invalid
2024-07-26 10:20:32 +01:00
Quentin Gliech
d1b9a4980c
Update opentelemetry to 0.24.0
2024-07-25 11:01:43 +02:00
dependabot[bot]
7dcb476e92
build(deps): bump psl from 2.1.50 to 2.1.55
...
Bumps [psl](https://github.com/addr-rs/psl ) from 2.1.50 to 2.1.55.
- [Release notes](https://github.com/addr-rs/psl/releases )
- [Commits](https://github.com/addr-rs/psl/compare/v2.1.50...v2.1.55 )
---
updated-dependencies:
- dependency-name: psl
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
2024-07-25 09:34:05 +02:00
dependabot[bot]
54b1b142df
build(deps): bump serde_with from 3.8.3 to 3.9.0
...
Bumps [serde_with](https://github.com/jonasbb/serde_with ) from 3.8.3 to 3.9.0.
- [Release notes](https://github.com/jonasbb/serde_with/releases )
- [Commits](https://github.com/jonasbb/serde_with/compare/v3.8.3...v3.9.0 )
---
updated-dependencies:
- dependency-name: serde_with
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
2024-07-25 09:33:43 +02:00
reivilibre
8147016735
graphql: Add a SetPasswordByRecovery mutation to perform account recovery ( #2986 )
2024-07-24 16:19:14 +01:00
Quentin Gliech
6f2ab4f738
graphql: allow filtering of sessions by last activity
2024-07-19 13:40:27 +02:00
reivilibre
1afd2a2906
Remove OPA-based password policy enforcement ( #2875 )
...
Co-authored-by: Quentin Gliech <quenting@element.io >
2024-07-16 14:33:04 +01:00
Quentin Gliech
fa32387ca5
Show whether the user is deactivated on the homeserver in the GraphQL API
...
Fix #2375
2024-07-16 13:20:28 +02:00
Quentin Gliech
bac2db9884
GraphQL API to unlock a user
...
Fixes #2101
2024-07-16 13:20:28 +02:00
Quentin Gliech
3eab10672f
Add a lock during syncs of user devices
2024-07-16 09:32:07 +02:00
Quentin Gliech
695228ade4
Provision users on the fake homeserver in tests
...
Because we now provision devices synchronously, we need to update the
tests so that the users exist on the fake homeserver.
2024-07-16 09:32:07 +02:00
Quentin Gliech
037cf996a8
Provision the devices synchronously
...
This means Synapse won't have to provision them on the fly anymore
2024-07-16 09:32:07 +02:00
Quentin Gliech
bf276289b6
Fully sync the devices with the homeserver
2024-07-16 09:32:07 +02:00
reivilibre
fbc360d1a9
Backend work to support minimum password complexity ( #2965 )
...
* config: Add minimum password complexity option
* PasswordManager: add function for checking if complexity is sufficient
* Enforce password complexity on registration, change and recovery
* cli: Use exit code 1 for weak passwords
This seems preferable to exit code 0, but ideally we should choose one
and document it.
* Expose minimum password complexity score over GraphQL
2024-07-11 10:17:39 +01:00
Quentin Gliech
f849b487cf
graphql: users query to list users with a few filters
2024-07-05 13:44:14 +02:00
Quentin Gliech
8a1ac9cc91
graphql: move the users queries to their own module
2024-07-05 13:44:14 +02:00
dependabot[bot]
9486460aae
build(deps): bump serde_with from 3.8.2 to 3.8.3
...
Bumps [serde_with](https://github.com/jonasbb/serde_with ) from 3.8.2 to 3.8.3.
- [Release notes](https://github.com/jonasbb/serde_with/releases )
- [Commits](https://github.com/jonasbb/serde_with/compare/v3.8.2...v3.8.3 )
---
updated-dependencies:
- dependency-name: serde_with
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
2024-07-05 10:29:10 +02:00
Quentin Gliech
57c87071d1
Update some dependencies and the cargo-deny allowlist
2024-07-05 10:07:40 +02:00
Quentin Gliech
dafc781957
Move Sentry to the workspace dependencies and upgrade
2024-07-05 10:07:40 +02:00
Quentin Gliech
07c9989e63
Upgrade async-graphql, fix mas-handlers & mas-axum-utils tests
...
This also replaces the init_tracing test helper with a general setup
test helper, so that it also initializes the rustls crypto backend.
2024-07-05 10:07:40 +02:00
Quentin Gliech
e7f50a92d6
Move tower-http dep to the workspace and adapt mas-axum-utils
...
We removed here the Timeout layer on the HTTP client service, because it
required the body to be Default, which isn't the case anymore. Not sure
what to do about it.
2024-07-05 10:07:40 +02:00
Quentin Gliech
a7a9369469
Upgrade most HTTP/Hyper crates and make mas-listener work
2024-07-05 10:07:40 +02:00
dependabot[bot]
f73d8624b4
build(deps): bump zeroize from 1.7.0 to 1.8.1
...
Bumps [zeroize](https://github.com/RustCrypto/utils ) from 1.7.0 to 1.8.1.
- [Commits](https://github.com/RustCrypto/utils/compare/zeroize-v1.7.0...zeroize-v1.8.1 )
---
updated-dependencies:
- dependency-name: zeroize
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
2024-07-01 13:40:43 +02:00
dependabot[bot]
790571fbb9
build(deps): bump psl from 2.1.48 to 2.1.49
...
Bumps [psl](https://github.com/addr-rs/psl ) from 2.1.48 to 2.1.49.
- [Release notes](https://github.com/addr-rs/psl/releases )
- [Commits](https://github.com/addr-rs/psl/compare/v2.1.48...v2.1.49 )
---
updated-dependencies:
- dependency-name: psl
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
2024-07-01 13:40:37 +02:00
dependabot[bot]
a9cf0c33c8
build(deps): bump serde_with from 3.8.1 to 3.8.2
...
Bumps [serde_with](https://github.com/jonasbb/serde_with ) from 3.8.1 to 3.8.2.
- [Release notes](https://github.com/jonasbb/serde_with/releases )
- [Commits](https://github.com/jonasbb/serde_with/compare/v3.8.1...v3.8.2 )
---
updated-dependencies:
- dependency-name: serde_with
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
2024-07-01 12:35:29 +02:00
dependabot[bot]
0aca818be2
build(deps): bump insta from 1.38.0 to 1.39.0
...
Bumps [insta](https://github.com/mitsuhiko/insta ) from 1.38.0 to 1.39.0.
- [Release notes](https://github.com/mitsuhiko/insta/releases )
- [Changelog](https://github.com/mitsuhiko/insta/blob/master/CHANGELOG.md )
- [Commits](https://github.com/mitsuhiko/insta/compare/1.38.0...1.39.0 )
---
updated-dependencies:
- dependency-name: insta
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
2024-07-01 12:35:15 +02:00
Quentin Gliech
8e0bfa73f0
Make the b64decode filter try multiple base64 encoding variants
2024-06-28 17:10:13 +02:00
Quentin Gliech
756f2c01f8
Separate error page when the recovery link was already used
2024-06-28 15:59:21 +02:00
Quentin Gliech
96df94104e
Show a proper 'link expired' page
2024-06-28 15:59:21 +02:00
Quentin Gliech
f9f2f4a3be
Gate account recovery behing a configuration flag
2024-06-28 15:59:21 +02:00
Quentin Gliech
09fca9fd75
Implement the password change form
2024-06-28 15:59:21 +02:00
Quentin Gliech
d633d33ab2
Allow re-sending emails for a recovery session
2024-06-28 15:59:21 +02:00
Quentin Gliech
2e4d868385
Recovery progress page
2024-06-28 15:59:21 +02:00
Quentin Gliech
4a60f5d32f
Job to generate codes for all emails in a recovery session
2024-06-28 15:59:21 +02:00
Quentin Gliech
319c43abc5
Start recovery view
2024-06-28 15:59:21 +02:00