Commit graph

312 commits

Author SHA1 Message Date
Valentin Tolmer
8397d536d9 chore: bump version to 0.6.2-alpha 2024-11-22 22:55:53 +01:00
Valentin Tolmer
acd39d20b1 release: 0.6.1 2024-11-22 22:47:49 +01:00
Valentin Tolmer
0ddeab8caa server: Fix schema migration from v8 for sqlite and postgres
Some checks failed
Docker Static / pre_job (push) Has been cancelled
Rust / pre_job (push) Has been cancelled
Docker Static / build-ui (push) Has been cancelled
Docker Static / build-bin (aarch64-unknown-linux-musl) (push) Has been cancelled
Docker Static / build-bin (armv7-unknown-linux-musleabihf) (push) Has been cancelled
Docker Static / build-bin (x86_64-unknown-linux-musl) (push) Has been cancelled
Docker Static / LLDAP database init test (push) Has been cancelled
Docker Static / LLDAP database migration test (push) Has been cancelled
Docker Static / Build Docker image (push) Has been cancelled
Docker Static / Create release artifacts (push) Has been cancelled
Rust / cargo test (push) Has been cancelled
Rust / cargo clippy (push) Has been cancelled
Rust / cargo fmt (push) Has been cancelled
Rust / Code coverage (push) Has been cancelled
Neither supports limits, but we can delete all the duplicate memberships and re-insert a single one
2024-11-21 23:34:37 +01:00
Jan Düpmeier
e982908768 cargo,auth,server: update opaque-ke => 0.7
Some checks failed
Docker Static / pre_job (push) Has been cancelled
Rust / pre_job (push) Has been cancelled
Docker Static / build-ui (push) Has been cancelled
Docker Static / build-bin (aarch64-unknown-linux-musl) (push) Has been cancelled
Docker Static / build-bin (armv7-unknown-linux-musleabihf) (push) Has been cancelled
Docker Static / build-bin (x86_64-unknown-linux-musl) (push) Has been cancelled
Docker Static / LLDAP database init test (push) Has been cancelled
Docker Static / LLDAP database migration test (push) Has been cancelled
Docker Static / Build Docker image (push) Has been cancelled
Docker Static / Create release artifacts (push) Has been cancelled
Rust / cargo test (push) Has been cancelled
Rust / cargo clippy (push) Has been cancelled
Rust / cargo fmt (push) Has been cancelled
Rust / Code coverage (push) Has been cancelled
2024-11-17 13:34:01 +01:00
Valentin Tolmer
713dbde4cb server: Fix the instructions to silence the key_seed warning
Some checks failed
Rust / pre_job (push) Has been cancelled
Rust / cargo test (push) Has been cancelled
Rust / cargo clippy (push) Has been cancelled
Rust / cargo fmt (push) Has been cancelled
Rust / Code coverage (push) Has been cancelled
2024-11-14 22:27:32 +01:00
Valentin Tolmer
b8c06ebd75 chore: bump version to 0.6.1-alpha
Some checks failed
Rust / pre_job (push) Has been cancelled
Rust / cargo test (push) Has been cancelled
Rust / cargo clippy (push) Has been cancelled
Rust / cargo fmt (push) Has been cancelled
Rust / Code coverage (push) Has been cancelled
2024-11-09 22:25:13 +01:00
Valentin Tolmer
098745ebc9 release: 0.6.0 2024-11-09 21:46:49 +01:00
Valentin Tolmer
95337e2cd8 server: Remove session-wide logging, add session_uuid to message logs
Some checks failed
Rust / pre_job (push) Has been cancelled
Rust / cargo test (push) Has been cancelled
Rust / cargo clippy (push) Has been cancelled
Rust / cargo fmt (push) Has been cancelled
Rust / Code coverage (push) Has been cancelled
2024-11-04 21:47:26 +01:00
Valentin Tolmer
143eb70bee server: Only use a single connection with SQlite
Some checks failed
Rust / pre_job (push) Has been cancelled
Rust / cargo test (push) Has been cancelled
Rust / cargo clippy (push) Has been cancelled
Rust / cargo fmt (push) Has been cancelled
Rust / Code coverage (push) Has been cancelled
Several writer connections can lock the DB and cause other inserts to fail.

A single connection should be enough given the usual workloads
2024-10-30 15:35:47 +01:00
Valentin Tolmer
35fe521cbe server: Correctly handle removal of the display_name attribute
Some checks are pending
Rust / pre_job (push) Waiting to run
Rust / cargo test (push) Blocked by required conditions
Rust / cargo clippy (push) Blocked by required conditions
Rust / cargo fmt (push) Blocked by required conditions
Rust / Code coverage (push) Blocked by required conditions
2024-10-29 15:33:46 +01:00
Valentin Tolmer
c8601b9169 server: Correctly handle attempts to probe for password resets
Some checks failed
Rust / pre_job (push) Has been cancelled
Rust / cargo test (push) Has been cancelled
Rust / cargo clippy (push) Has been cancelled
Rust / cargo fmt (push) Has been cancelled
Rust / Code coverage (push) Has been cancelled
2024-10-28 20:09:46 +01:00
Valentin Tolmer
f0fcc88f1d server: Fix env warning for nested keys 2024-10-28 16:23:25 +01:00
Valentin Tolmer
c08ddecd32 server: Fix missing lowercasing when changing passwords through LDAP 2024-10-28 16:06:25 +01:00
Valentin Tolmer
a190fe7ddf server: return custom attributes when asked for all attributes
Some checks failed
Rust / pre_job (push) Has been cancelled
Rust / cargo test (push) Has been cancelled
Rust / cargo clippy (push) Has been cancelled
Rust / cargo fmt (push) Has been cancelled
Rust / Code coverage (push) Has been cancelled
2024-10-26 19:07:08 +02:00
Valentin Tolmer
52c917d967 server: improve key_seed warning
Some checks failed
Rust / pre_job (push) Has been cancelled
Rust / cargo test (push) Has been cancelled
Rust / cargo clippy (push) Has been cancelled
Rust / cargo fmt (push) Has been cancelled
Rust / Code coverage (push) Has been cancelled
2024-10-22 00:48:40 +02:00
Valentin Tolmer
f01daae6a8 server: Fix env variable warning 2024-10-22 00:48:29 +02:00
Valentin Tolmer
305b272cdf app: Add support for group attributes 2024-10-22 00:37:38 +02:00
Valentin Tolmer
56eee6908e server: Add a way to print raw logs
Some checks failed
Rust / pre_job (push) Has been cancelled
Rust / cargo test (push) Has been cancelled
Rust / cargo clippy (push) Has been cancelled
Rust / cargo fmt (push) Has been cancelled
Rust / Code coverage (push) Has been cancelled
If the variable LLDAP_RAW_LOG is set, the logs will be both formatted with tracing_forest and printed raw
2024-10-10 21:27:36 +02:00
Valentin Tolmer
17bcd7645b app: Clean up code, don't error on admin empty email
Some checks failed
Rust / pre_job (push) Has been cancelled
Rust / cargo test (push) Has been cancelled
Rust / cargo clippy (push) Has been cancelled
Rust / cargo fmt (push) Has been cancelled
Rust / Code coverage (push) Has been cancelled
2024-10-05 23:10:40 +02:00
Austin Alvarado
dcba3d17dc app: Add support for user-created attributes
Some checks failed
Rust / pre_job (push) Has been cancelled
Rust / cargo test (push) Has been cancelled
Rust / cargo clippy (push) Has been cancelled
Rust / cargo fmt (push) Has been cancelled
Rust / Code coverage (push) Has been cancelled
Note: This PR doesn't handle errors around Jpeg files very well.

Co-authored-by: Bojidar Marinov <bojidar.marinov.bg@gmail.com>
Co-authored-by: Austin Alvarado <pixelrazor@gmail.com>
2024-09-30 23:53:14 +02:00
Valentin Tolmer
1f3f73585b server: Add logging for password resets, add name for successful opaque logins
Some checks failed
Rust / pre_job (push) Has been cancelled
Rust / cargo test (push) Has been cancelled
Rust / cargo clippy (push) Has been cancelled
Rust / cargo fmt (push) Has been cancelled
Rust / Code coverage (push) Has been cancelled
2024-09-26 22:51:34 +02:00
Valentin Tolmer
0c6a92a8fa server: Clarify logging of login attempts and failures 2024-09-26 20:43:19 +02:00
Valentin Tolmer
10a820f2a2 server: detect anonymous binds and return a correct error
Some checks failed
Rust / pre_job (push) Has been cancelled
Rust / cargo test (push) Has been cancelled
Rust / cargo clippy (push) Has been cancelled
Rust / cargo fmt (push) Has been cancelled
Rust / Code coverage (push) Has been cancelled
2024-09-11 22:19:58 +02:00
Valentin Tolmer
01f97f5ed4 server: clean up the expected keys
Some checks are pending
Rust / pre_job (push) Waiting to run
Rust / cargo test (push) Blocked by required conditions
Rust / cargo clippy (push) Blocked by required conditions
Rust / cargo fmt (push) Blocked by required conditions
Rust / Code coverage (push) Blocked by required conditions
2024-09-10 23:25:33 +02:00
Valentin Tolmer
f14aa2284c server: Detect unknown env variables (e.g. due to typos)
Some checks failed
Rust / pre_job (push) Has been cancelled
Rust / cargo test (push) Has been cancelled
Rust / cargo clippy (push) Has been cancelled
Rust / cargo fmt (push) Has been cancelled
Rust / Code coverage (push) Has been cancelled
2024-09-08 21:45:36 +02:00
Valentin Tolmer
65e2103365 server: Simplify the debug print of various structs
Some checks are pending
Rust / pre_job (push) Waiting to run
Rust / cargo test (push) Blocked by required conditions
Rust / cargo clippy (push) Blocked by required conditions
Rust / cargo fmt (push) Blocked by required conditions
Rust / Code coverage (push) Blocked by required conditions
And use derive_more more liberally to simplify the impls
2024-09-08 00:43:58 +02:00
Valentin Tolmer
5db0072cfa server: clarify SMTP error message
SMTP docs for many email providers use SSL to mean SSL/TLS, and TLS to mean STARTTLS, causing endless confusion. This should hopefully help.
2024-09-07 23:50:43 +02:00
Valentin Tolmer
1d8d3eb73f server: Fix attribute name
Some checks are pending
Rust / pre_job (push) Waiting to run
Rust / cargo test (push) Blocked by required conditions
Rust / cargo clippy (push) Blocked by required conditions
Rust / cargo fmt (push) Blocked by required conditions
Rust / Code coverage (push) Blocked by required conditions
2024-09-07 22:27:20 +02:00
Valentin Tolmer
6cf0f6df06 server: map email and display_name from attributes into user fields
Some checks failed
Rust / pre_job (push) Has been cancelled
Rust / cargo test (push) Has been cancelled
Rust / cargo clippy (push) Has been cancelled
Rust / cargo fmt (push) Has been cancelled
Rust / Code coverage (push) Has been cancelled
2024-08-28 00:25:23 +02:00
Valentin Tolmer
b1384818d2 server: Add a is_readonly attribute to the schema 2024-08-27 23:04:24 +02:00
Valentin Tolmer
3ec44a58be server: Allow password reset every time the server starts
Some checks failed
Rust / pre_job (push) Has been cancelled
Rust / cargo test (push) Has been cancelled
Rust / cargo clippy (push) Has been cancelled
Rust / cargo fmt (push) Has been cancelled
Rust / Code coverage (push) Has been cancelled
2024-08-26 12:53:25 +02:00
Valentin Tolmer
2c79a40a73 server: Mask the details of SMTP errors, sleep when failing to send an email
Some checks failed
Rust / pre_job (push) Has been cancelled
Rust / cargo test (push) Has been cancelled
Rust / cargo clippy (push) Has been cancelled
Rust / cargo fmt (push) Has been cancelled
Rust / Code coverage (push) Has been cancelled
2024-08-21 16:19:13 +02:00
Valentin Tolmer
dc26f97117 server: Fix compilation on Windows
Some checks are pending
Rust / pre_job (push) Waiting to run
Rust / cargo test (push) Blocked by required conditions
Rust / cargo clippy (push) Blocked by required conditions
Rust / cargo fmt (push) Blocked by required conditions
Rust / Code coverage (push) Blocked by required conditions
2024-08-18 20:12:03 +02:00
Valentin Tolmer
09c5d9f925 server: Fix implementation of attribute present filter
Some checks failed
Rust / pre_job (push) Has been cancelled
Rust / cargo test (push) Has been cancelled
Rust / cargo clippy (push) Has been cancelled
Rust / cargo fmt (push) Has been cancelled
Rust / Code coverage (push) Has been cancelled
Instead of just doing a schema check, this actually looks for users that have a value for this attribute.
2024-08-16 23:56:02 +02:00
Valentin Tolmer
ee7f9c9f41 server: Update ldap3_proto dependency 2024-08-16 23:47:06 +02:00
Valentin Tolmer
fa9c503de7 server: Add support for memberOf with plain user names, relax hard errors
This should help when the client sends some invalid-looking queries as part of a bigger filter
2024-08-16 23:21:20 +02:00
Bojidar Marinov
049a360506
server: Lookup first_name/last_name in the right list of attributes (#943)
Some checks failed
Rust / pre_job (push) Has been cancelled
Rust / cargo test (push) Has been cancelled
Rust / cargo clippy (push) Has been cancelled
Rust / cargo fmt (push) Has been cancelled
Rust / Code coverage (push) Has been cancelled
Note the std::mem::take(&mut user.attributes) further up that zeroes out user.attributes
2024-07-31 23:55:07 +02:00
Valentin Tolmer
6f46ffd1e4 clippy: new fixes 2024-06-16 12:18:46 +02:00
Valentin Tolmer
22623bfab1 server: Fix user search for multiple memberOf 2024-03-18 22:02:12 +01:00
Valentin Tolmer
13720c101c server: silence clippy warnings 2024-02-27 08:22:58 +01:00
Valentin Tolmer
a1eb708cf3 server: Add missing unique indices on lowercase email/group names, fix memberof lookup 2024-02-26 10:53:51 +01:00
Valentin Tolmer
5c5b87d5af app,server: Switch /reset/step1 to a POST request
Otherwise, caching can become an issue. Also, it's not an idempotent request.
2024-02-09 00:20:31 +01:00
Valentin Tolmer
96f5b31e0c server: Add graphQL methods to manage custom LDAP object classes 2024-02-06 22:39:05 +01:00
Valentin Tolmer
4955b7fac1 server: Add support for the custom LDAP object classes in LDAP filters 2024-02-06 22:39:05 +01:00
Valentin Tolmer
646fe32645 server: Add support for custom LDAP object classes for users and groups 2024-02-05 22:51:02 +01:00
Valentin Tolmer
1c65cd115e server: Fix panic due to database collation
When the database's collation is not "C", the DB order is not the same as the
Rust order. As such, asserting that the elements are in increasing order fails.
However, since both queries get the order from the database, they should be in
the same order.

With too many users, the query had a giant filter `IN (u1, u2, u3,
...)`. In PostgreSQL, we can pass the users as an array instead, but that
doesn't work with SQLite. Instead, we repeat the filter from the
previous query to get the same users/groups, as a subquery.
2024-02-02 15:39:16 +01:00
Austin Alvarado
93f3057b8f server: remove debug print 2024-01-25 22:35:42 +01:00
Valentin Tolmer
d4b3b4649e server: Clean up main, make more functions async 2024-01-24 00:04:43 +01:00
Valentin Tolmer
c2eed8909a server: Only call expand_attributes at most once per request 2024-01-23 00:17:08 +01:00
Valentin Tolmer
b82a2d5705 server: Treat the database password as a secret 2024-01-22 23:12:33 +01:00