Quentin Gliech
6a41b887d4
WIP: Refactor higher-level data-model to its own crate
2021-10-12 19:03:01 +02:00
Quentin Gliech
a2671fcce8
ci: switch code coverage to grcov
2021-10-06 17:46:13 +02:00
Quentin Gliech
3ee57a0a61
ci: upload test coverage on codecov.io
2021-10-06 11:03:57 +02:00
Quentin Gliech
a8aeb5b52c
ci: generate and upload LSIF data
2021-10-05 21:25:32 +02:00
Quentin Gliech
44d50ee7b8
Better data structure to handle scopes
2021-10-05 20:36:36 +02:00
Quentin Gliech
ab18297e91
PKCE support
2021-10-05 14:08:47 +02:00
Quentin Gliech
b3a0246af0
Upgrade dependencies
2021-10-04 14:48:23 +02:00
Quentin Gliech
d24447cf88
Fix request handling when the cookie header is not there
2021-09-25 18:09:37 +02:00
Quentin Gliech
49a71fed37
docs: fix edit links
2021-09-25 18:00:32 +02:00
Quentin Gliech
7cd828602c
Build the documentation to GitHub Pages
2021-09-24 19:10:49 +02:00
Quentin Gliech
29378581a3
Add some documentation as an mdBook
2021-09-24 19:10:17 +02:00
Quentin Gliech
2792d6c6b0
Trigger a rebuild when the migration files change
2021-09-24 19:08:52 +02:00
Quentin Gliech
98c68d6b8e
Simplify template render check logic
...
Also documents a bunch of things in mas_core::templates
2021-09-24 11:45:25 +02:00
Quentin Gliech
9215ae6561
Add missing file forgotten in fc8e18c781
2021-09-24 09:20:22 +02:00
Quentin Gliech
c87f046998
WIP: generate sample template contexts for testing
2021-09-23 23:51:50 +02:00
Quentin Gliech
fc8e18c781
Templates config
2021-09-23 23:51:17 +02:00
Quentin Gliech
df3133ba42
Fix GitHub Actions workflow
2021-09-23 21:39:39 +02:00
Quentin Gliech
8ba66c9216
Document the mas_core::reply and mas_core::tokens modules
2021-09-23 21:34:13 +02:00
Quentin Gliech
d968fe463e
Upgrade all dependencies
2021-09-23 20:54:24 +02:00
Quentin Gliech
21975ed036
Fully document the mas_core::filters module
2021-09-23 20:53:51 +02:00
Quentin Gliech
2ff2f7d678
Simplify session-related filters
2021-09-23 19:16:30 +02:00
Quentin Gliech
819252ffe6
Make database-related warp filters generic over the DB type
2021-09-23 17:40:50 +02:00
Quentin Gliech
b6ba5d04d5
Proper error when submitting invalid authorization code
2021-09-23 14:48:12 +02:00
Quentin Gliech
01c1c1824a
Refactor token generation a bit
2021-09-23 14:24:44 +02:00
Quentin Gliech
d07dd81c0d
Clean up some warp filters and add documentation
2021-09-23 14:02:44 +02:00
Quentin Gliech
fb25511484
ci: simplify workflow and enhance cache restore
...
This stops building on Windows and macOS and changes the cache key a bit
for better cache restore when the lockfiles or toolchain change
2021-09-23 10:27:25 +02:00
Quentin Gliech
befd0a8c2d
Consume authorization code on use
2021-09-17 18:24:43 +02:00
Quentin Gliech
838d6d9472
Include "state" in authorization request errors
2021-09-17 18:13:30 +02:00
Quentin Gliech
55ca0dc9b3
Better error handling in cookies, session and csrf filters
2021-09-17 18:12:34 +02:00
Quentin Gliech
03bf2f3429
Handle auth errors on the userinfo endpoint
2021-09-17 16:20:10 +02:00
Quentin Gliech
83176dbfed
Make the template contexts a bit more clear
2021-09-17 14:30:06 +02:00
Quentin Gliech
bc55420a39
ci: better job dependencies
2021-09-17 12:55:10 +02:00
Quentin Gliech
dc70aa7999
Allow loading multiple configuration files
2021-09-17 12:22:03 +02:00
Quentin Gliech
224ab2bc98
Allow splitting database connection options
2021-09-17 12:03:00 +02:00
Quentin Gliech
0b3fd63748
Ability to run migrations on startup
...
Also adds a bunch of logging information on startup
2021-09-17 11:27:06 +02:00
Quentin Gliech
bc07a0d968
Docker image and CI
2021-09-17 10:40:08 +02:00
Quentin Gliech
bade8cd8bf
Embed templates in binary & add command to export them
2021-09-16 23:39:07 +02:00
Quentin Gliech
89d0821ed2
Bump MSRV to 1.54
...
clap 4.0.0-beta4 broke <1.54 compatibility
2021-09-16 15:05:07 +02:00
Quentin Gliech
18513ee604
Fix minor code style issues
2021-09-16 14:54:17 +02:00
Quentin Gliech
7681f5131a
Split the service in multiple crates
2021-09-16 14:43:56 +02:00
Quentin Gliech
e74bc12ccd
Upgrade dependencies
2021-09-16 12:33:04 +02:00
Quentin Gliech
a8cd3d9413
Fix signing key in tests
2021-09-16 12:23:45 +02:00
Quentin Gliech
589f666bf7
more error handling in token endpoint
...
Also adds some OP metadatas to help with conformance
2021-09-11 00:53:21 +02:00
Quentin Gliech
c39e223032
WIP error management in authorization request
2021-09-10 22:53:21 +02:00
Quentin Gliech
108a974880
disabled bogus clippy lint
2021-09-09 23:27:51 +02:00
Quentin Gliech
ce783de2d1
implement userinfo endpoint
...
Also fix some responses to pass more compliance tests
2021-09-09 23:11:09 +02:00
Quentin Gliech
81d95ef215
Add c_hash, at_hash and nonce claims to id_token
2021-09-09 16:52:08 +02:00
Quentin Gliech
909da01918
Properly block on hashing and signing operations
...
This moves those operations on Tokio "blocking" threads, which avoids
that they block the async executor while running. It also makes the
config generation asynchronous with better logging of what is happening.
2021-09-09 14:15:42 +02:00
Quentin Gliech
5c63b93c92
Basic id_token signing
2021-09-09 13:18:53 +02:00
Quentin Gliech
c5d4c0b83c
Implement refresh tokens
2021-08-27 15:27:19 +02:00