1
0
mirror of https://github.com/matrix-org/matrix-authentication-service.git synced 2025-07-31 09:24:31 +03:00
Commit Graph

316 Commits

Author SHA1 Message Date
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
cef4645286 storage: add a filter by last active time on app sessions 2024-07-19 13:40:27 +02:00
62c2af5e6a storage: add a filter by last active time on OAuth 2.0 sessions 2024-07-19 13:40:27 +02:00
8bc1ef151f storage: add a filter by last active time on compatibility sessions 2024-07-19 13:40:27 +02:00
c6b759c56d storage: add a filter by last active time on browser sessions 2024-07-19 13:40:27 +02:00
12d2f1f827 Add new filters on the OAuth and compat sessions 2024-07-16 18:23:23 +02:00
dcaf65e6e7 Batch finish browser sessions 2024-07-16 14:13:11 +02:00
04b96b87b8 Batch finish OAuth 2.0 sessions 2024-07-16 14:13:11 +02:00
f8d12cc305 Batch finish compatibility sessions 2024-07-16 14:13:11 +02:00
0207495225 Add a way to reactivate users on the homeserver 2024-07-16 13:20:28 +02:00
3eab10672f Add a lock during syncs of user devices 2024-07-16 09:32:07 +02:00
35c06ac27b Deprecate the ProvisionDeviceJob and DeleteDeviceJob jobs 2024-07-16 09:32:07 +02:00
bf276289b6 Fully sync the devices with the homeserver 2024-07-16 09:32:07 +02:00
e75df0752d storage: methods to list and count users with filters and pagination 2024-07-05 13:44:14 +02:00
c156a3891e Actually send emails for recovery 2024-06-28 15:59:21 +02:00
4a60f5d32f Job to generate codes for all emails in a recovery session 2024-06-28 15:59:21 +02:00
b2ee5de050 storage: Add an email filter on the user email list 2024-06-28 15:59:21 +02:00
43582e7eca Data model and repository for the user recovery flow 2024-06-28 15:59:21 +02:00
cd0ec35d2f Soft-delete upstream OAuth 2.0 providers on config sync 2024-04-03 09:51:22 +02:00
4e3823fe4f Add a soft-deletion column on upstream OAuth 2.0 providers 2024-04-03 09:51:22 +02:00
eb950151af Upgrade OTEL and remove support for Jaeger and Zipkin exporters 2024-03-18 17:26:40 +01:00
61a69f5af4 Upgrade chrono and replace deprecated methods usage 2024-03-18 17:26:40 +01:00
1821136e3f Additional parameters from upstream OAuth2 providers in the data model 2024-03-01 14:36:37 +01:00
f3cbd3b315 Parse User Agents on the backend side (#2388)
* Parse user agents on the server side

* Parse and expose user agents on the backend

* Use the parsed user agent in the device consent page

* Fix the device icon tests

* Fix clippy warnings

* Box stuff to avoid large enum variants

* Ignore a clippy warning

* Fix the requester boxing
2024-02-23 16:47:48 +01:00
f171d76dc5 Record user agents on OAuth 2.0 and compat sessions (#2386)
* Record user agents on OAuth 2.0 and compat sessions

* Add tests for recording user agent in sessions
2024-02-22 10:01:32 +01:00
ed5893eb20 Save which user session created a compat session
This also exposes the user session in the GraphQL API, and allow
filtering on browser session ID on the app session list.
2024-02-21 11:55:58 +01:00
03b6ad7138 Remove the unique constraint on device IDs on compatibility sessions
In OAuth 2.0 sessions, we can have multiple sessions for the same device
anyway, so this constraint doesn't exactly make sense.

Fixes #2033
Fixes #2312
2024-02-20 15:50:20 +01:00
0beb842195 Make the user agree to T&C during registration 2024-02-07 17:21:22 +01:00
90c386847a Setup a repository to track user terms agreements 2024-02-07 17:21:22 +01:00
17e968f7cc Record the user agent and IP in the device code grant 2024-02-02 18:01:51 +01:00
efa6af3294 Run generated files updates, fix doc links & fmt 2024-02-02 18:01:51 +01:00
286fc57103 Add a repository for device code grants 2024-02-02 18:01:51 +01:00
b927d330c9 Bump most Rust dependencies 2024-02-02 15:37:05 +01:00
49963b26f8 Prepare workspace to publish OIDC crates 2023-12-07 16:02:55 +01:00
a0f5f3c642 Enable clippy lints on a workspace level
This enables a lot more lints than before in some crates, so this fixed a lot of warnings as well.
2023-12-05 17:20:42 +01:00
30247448d5 Bump Rust dependencies 2023-11-24 13:04:37 +01:00
5126d36b2e Add upstream OAuth 2.0 providers name and branding 2023-11-20 17:23:02 +01:00
7315dd9a7a Allow endpoints and discovery mode override for upstream oauth2 providers
This time, at the configuration and database level
2023-11-17 16:18:39 +01:00
f1570de50c build(deps): bump the apalis group with 2 updates
Bumps the apalis group with 2 updates: apalis-core and apalis-cron.


Updates `apalis-core` from 0.4.5 to 0.4.6

Updates `apalis-cron` from 0.4.5 to 0.4.6

---
updated-dependencies:
- dependency-name: apalis-core
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: apalis
- dependency-name: apalis-cron
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: apalis
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-14 14:30:52 +01:00
5ab0e880ff Upgrade opentelemetry to 0.21.0 2023-11-08 11:49:03 +01:00
f2286e37ef build(deps): bump the opentelemetry group with 8 updates
Bumps the opentelemetry group with 8 updates:

| Package | From | To |
| --- | --- | --- |
| [tracing-opentelemetry](https://github.com/tokio-rs/tracing-opentelemetry) | `0.21.0` | `0.22.0` |
| [opentelemetry-http](https://github.com/open-telemetry/opentelemetry-rust) | `0.9.0` | `0.10.0` |
| [opentelemetry-jaeger](https://github.com/open-telemetry/opentelemetry-rust) | `0.19.0` | `0.20.0` |
| [opentelemetry-otlp](https://github.com/open-telemetry/opentelemetry-rust) | `0.13.0` | `0.14.0` |
| [opentelemetry-prometheus](https://github.com/open-telemetry/opentelemetry-rust) | `0.13.0` | `0.14.0` |
| [opentelemetry-semantic-conventions](https://github.com/open-telemetry/opentelemetry-rust) | `0.12.0` | `0.13.0` |
| [opentelemetry-stdout](https://github.com/open-telemetry/opentelemetry-rust) | `0.1.0` | `0.2.0` |
| [opentelemetry-zipkin](https://github.com/open-telemetry/opentelemetry-rust) | `0.18.0` | `0.19.0` |


Updates `tracing-opentelemetry` from 0.21.0 to 0.22.0
- [Release notes](https://github.com/tokio-rs/tracing-opentelemetry/releases)
- [Changelog](https://github.com/tokio-rs/tracing-opentelemetry/blob/v0.1.x/CHANGELOG.md)
- [Commits](https://github.com/tokio-rs/tracing-opentelemetry/compare/v0.21.0...v0.22.0)

Updates `opentelemetry-http` from 0.9.0 to 0.10.0
- [Release notes](https://github.com/open-telemetry/opentelemetry-rust/releases)
- [Commits](https://github.com/open-telemetry/opentelemetry-rust/compare/v0.9.0...v0.10.0)

Updates `opentelemetry-jaeger` from 0.19.0 to 0.20.0
- [Release notes](https://github.com/open-telemetry/opentelemetry-rust/releases)
- [Commits](https://github.com/open-telemetry/opentelemetry-rust/compare/v0.19.0...v0.20.0)

Updates `opentelemetry-otlp` from 0.13.0 to 0.14.0
- [Release notes](https://github.com/open-telemetry/opentelemetry-rust/releases)
- [Commits](https://github.com/open-telemetry/opentelemetry-rust/compare/v0.13.0...v0.14.0)

Updates `opentelemetry-prometheus` from 0.13.0 to 0.14.0
- [Release notes](https://github.com/open-telemetry/opentelemetry-rust/releases)
- [Commits](https://github.com/open-telemetry/opentelemetry-rust/compare/v0.13.0...v0.14.0)

Updates `opentelemetry-semantic-conventions` from 0.12.0 to 0.13.0
- [Release notes](https://github.com/open-telemetry/opentelemetry-rust/releases)
- [Commits](https://github.com/open-telemetry/opentelemetry-rust/compare/v0.12.0...v0.13.0)

Updates `opentelemetry-stdout` from 0.1.0 to 0.2.0
- [Release notes](https://github.com/open-telemetry/opentelemetry-rust/releases)
- [Changelog](https://github.com/open-telemetry/opentelemetry-rust/blob/v0.2.0/CHANGELOG.md)
- [Commits](https://github.com/open-telemetry/opentelemetry-rust/commits/v0.2.0)

Updates `opentelemetry-zipkin` from 0.18.0 to 0.19.0
- [Release notes](https://github.com/open-telemetry/opentelemetry-rust/releases)
- [Commits](https://github.com/open-telemetry/opentelemetry-rust/compare/v0.18.0...v0.19.0)

---
updated-dependencies:
- dependency-name: tracing-opentelemetry
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: opentelemetry
- dependency-name: opentelemetry-http
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: opentelemetry
- dependency-name: opentelemetry-jaeger
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: opentelemetry
- dependency-name: opentelemetry-otlp
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: opentelemetry
- dependency-name: opentelemetry-prometheus
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: opentelemetry
- dependency-name: opentelemetry-semantic-conventions
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: opentelemetry
- dependency-name: opentelemetry-stdout
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: opentelemetry
- dependency-name: opentelemetry-zipkin
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: opentelemetry
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-11-08 11:49:03 +01:00
b9258f74cc bump other rust dependencies 2023-10-20 00:22:40 +02:00
75a94c34ff build(deps): bump async-trait from 0.1.73 to 0.1.74
Bumps [async-trait](https://github.com/dtolnay/async-trait) from 0.1.73 to 0.1.74.
- [Release notes](https://github.com/dtolnay/async-trait/releases)
- [Commits](https://github.com/dtolnay/async-trait/compare/0.1.73...0.1.74)

---
updated-dependencies:
- dependency-name: async-trait
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-10-19 17:41:02 +02:00
3cb8a26d95 "Can request admin" flag on user 2023-10-09 18:52:30 +02:00
2a100ab927 graphql: allow filtering appsessions on device_id 2023-10-06 16:05:26 +02:00
b2cd8d83f7 templates: translate a lot more stuff 2023-10-05 19:29:23 +02:00
f1d420f381 Storage layer for a unified session list 2023-09-20 20:27:08 +02:00
41dadcfd74 Fix broken doc links 2023-09-19 21:57:54 +02:00
b85655b944 Save the session activity in the database 2023-09-19 21:57:54 +02:00
c9155ef0cf Rust dependencies housekeeping
Including:
 - package upgrades
 - stop using the patched version of `ulid`
 - update cargo deny duplicate exception list
2023-09-14 23:43:00 +02:00