Commit Graph

446 Commits

Author SHA1 Message Date
Valentin Tolmer
40ba65dca7 app: make a graphql argument required 2021-08-31 20:32:55 +02:00
Valentin Tolmer
459f1eba19 graphql: add an endpoint to create a user 2021-08-31 20:32:55 +02:00
Valentin Tolmer
dd7e9c9283 app: migrate user_details to graphql endpoint 2021-08-31 20:32:55 +02:00
Valentin Tolmer
267ce51973 jwt: Harden check by hardcoding accepted algorithms 2021-08-30 09:27:00 +02:00
Valentin Tolmer
0ecd9ed263 Migrate datetimes to UTC 2021-08-30 09:27:00 +02:00
Valentin Tolmer
848cc86d73 api: add the rest of the fields to User 2021-08-30 09:27:00 +02:00
Valentin Tolmer
a1f40a32a5 app: refactor API methods with empty responses 2021-08-30 09:27:00 +02:00
Valentin Tolmer
f860b8fe43 app: Migrate list_users to use the graphql client 2021-08-30 09:27:00 +02:00
Valentin Tolmer
83ed58bff2 errors: use anyhow::Context everywhere 2021-08-30 09:27:00 +02:00
Valentin Tolmer
a08b9a556d cli: introduce the export_graphql_schema command
Split the command line into subcommands `run` and
`export_graphql_schema`.
2021-08-30 09:27:00 +02:00
Valentin Tolmer
d2617e08a7 Simplify get_user_groups to take a &str 2021-08-30 09:27:00 +02:00
Valentin Tolmer
a51965a61a Implement basic GraphQL endpoint with auth 2021-08-30 09:27:00 +02:00
Valentin Tolmer
be3e50d31a Update actix libraries 2021-08-30 09:27:00 +02:00
Valentin Tolmer
87516eb218 Update actix libraries 2021-08-22 16:58:33 +02:00
Valentin Tolmer
860ca8d41c Add the twitter handle to the README 2021-07-05 14:11:19 +02:00
Valentin Tolmer
04b9e97527 Implement client view for the user details 2021-07-05 13:41:36 +02:00
Valentin Tolmer
5e0b41998f Propagate the admin status to the top component 2021-07-05 13:41:36 +02:00
Valentin Tolmer
6744a89922 Implement per-user guards for the user details endpoint 2021-07-05 13:41:36 +02:00
Valentin Tolmer
c7fb8baadb Remove useless clones 2021-07-05 13:41:36 +02:00
Valentin Tolmer
5a3332430f Add a route to server user details 2021-07-05 13:41:36 +02:00
Valentin Tolmer
b0c721bb28 Add a method to get a single user's details 2021-07-05 13:41:36 +02:00
Valentin Tolmer
5a5db13cc2 Add a request message for user details 2021-07-05 13:41:36 +02:00
Valentin Tolmer
a731777514 Remove outdated config sample 2021-07-05 13:41:36 +02:00
Valentin Tolmer
ab66a36fe6 Set admin password when creating the user 2021-07-05 10:24:23 +02:00
Valentin Tolmer
d891529da9 Add allow warnings for nonstandard macro braces
The warnings come from the macros of libraries that we use, so we can't
change them.
2021-07-05 10:10:27 +02:00
Valentin Tolmer
65f0dfed84 Fix dockerfile start command 2021-07-01 12:16:02 +02:00
Valentin Tolmer
8e049c9e54 Add a docker image 2021-06-30 17:22:32 +02:00
Valentin Tolmer
e09c73efce Register clients' passwords using OPAQUE 2021-06-25 10:10:55 +02:00
Valentin Tolmer
8b73de0df7 Update opaque and implement it without DB 2021-06-23 20:46:55 +02:00
Valentin Tolmer
f12abb35d3 Fix workflow to use the workspace 2021-06-23 11:13:18 +02:00
Valentin Tolmer
0a761ff11f Create a workspace for the packages 2021-06-23 11:13:05 +02:00
Valentin Tolmer
97aab86e8e Add clippy and fmt to the workflow 2021-06-23 10:57:43 +02:00
Valentin Tolmer
2f7019433d Fix clippy warnings 2021-06-23 10:57:34 +02:00
Valentin Tolmer
eec0903052 Refactor API client 2021-06-23 10:27:59 +02:00
Valentin Tolmer
659eab3706 Implement opaque login flow in the client 2021-06-23 10:27:59 +02:00
Valentin Tolmer
4d68a2a015 Add TCP handlers for opaque protocol 2021-06-23 10:27:59 +02:00
Valentin Tolmer
7be0e420d4 Add a handler for OPAQUE messages 2021-06-23 10:27:59 +02:00
Valentin Tolmer
f6372c7e02 Add the OPAQUE tables to the cleanup cron 2021-06-23 10:27:59 +02:00
Valentin Tolmer
4bc48a064d Create SQL tables for the temporary OPAQUE data 2021-06-23 10:27:59 +02:00
Valentin Tolmer
7e6c6eace6 Add messages for the OPAQUE protocol 2021-06-23 10:27:59 +02:00
Valentin Tolmer
b5c7e3b0d7 clippy: fix lint warning 2021-06-23 10:27:59 +02:00
Valentin Tolmer
c3bbcce6a3 Simplify KeyPair handling 2021-06-23 10:27:59 +02:00
Valentin Tolmer
f918debc2e Simplify opaque types 2021-06-23 10:27:59 +02:00
Valentin Tolmer
973fac4bb8 Make passwords optional when registering a new user 2021-06-23 10:27:59 +02:00
Valentin Tolmer
3c916a2530 Implement password checking using opaque 2021-06-23 10:27:59 +02:00
Valentin Tolmer
86bfd37b70 Opaque: use argon2 as slow hash 2021-06-23 10:27:59 +02:00
Valentin Tolmer
973fa40dd1 Add OPAQUE implementation 2021-06-23 10:27:59 +02:00
Valentin Tolmer
d5f84cd588 Add cargo.lock and fix some dependencies
Note that the auth_service handler has become less generic, but it's
enough for our purposes.
2021-06-22 17:27:43 +02:00
Valentin Tolmer
0d8e317490 build.sh: Detect local installs of rollup and improve error messages 2021-06-22 15:32:20 +02:00
Valentin Tolmer
0469252277 Add Bootstrap CSS 2021-06-08 18:48:27 +02:00