1144 Commits

Author SHA1 Message Date
Lil PhyziX 15a2422431 html: add base href to index_local.html
This allows sub-paths.

Also update documentation to properly reflect what LLDAP_HTTP_URL docker environment variable does.
2026-07-19 08:46:59 +02:00
kanywst ff81f08c18 server: use OsRng for refresh and password-reset tokens
gen_random_string generated the refresh and password-reset tokens with
SmallRng, which is not a CSPRNG, while the rest of the codebase uses OsRng
for secrets. Switch it to OsRng to match.
2026-07-19 08:44:38 +02:00
kanywst 6d768a5e8c fix: return InsufficientAccessRights instead of panicking in password modify
A regular user sending a Password Modify extended request for another
user's DN reached a .expect() on the read-permission check, panicking the
handler instead of being denied. Return InsufficientAccessRights, matching
the LDAP Modify path, and add a regression test.
2026-07-19 08:33:35 +02:00
copilot-swe-agent[bot] dbc85d9594 server: reject LDAP equality filters on list custom attributes with UnwillingToPerform error 2026-05-27 00:06:55 +02:00
Xre0uS e567d17062 fix: percent-decode user_id route params for users with spaces in ID (#585) 2026-05-26 23:42:08 +02:00
Valentin Tolmer d293941a44 chore: fmt and clippy 2026-05-26 23:37:26 +02:00
aokblast 203169fe4a server: Bind to :: by default
Healthcheck connects to `localhost`, which may resolve to either IPv4 or
Ipv6 depending on the platform. However, the server was previously bound
to 0.0.0.0, limiting it to IPv4-only.

Switching to :: allows the server to listen on both IPv6 and IPv4 when
the socket is not restricted with IPV6_V6ONLY, as described in RFC 3493.

This improves cross-platform comaptibility and fixes "cargo test"
failures in the healthcheck on FreeBSD.
2026-05-26 12:48:32 +02:00
Matt Van Horn 3bf9ea5206 server: prevent attributes with conflicting types across users/groups (#1426)
Before creating a user attribute, check if a group attribute with
the same name exists with a different type (and vice versa). Return
an error if the types conflict, as LDAP requires each attribute
name to have a single associated type (RFC 4512).

Partial fix for #1202

Co-authored-by: Matt Van Horn <455140+mvanhorn@users.noreply.github.com>
2026-05-26 00:28:34 +02:00
René Neumann ddd6b469f2 bootstrap: Reintroduce LLDAP_USER_PASSWORD
Ensure no passwords are leaked via cmdline.
2026-05-26 00:05:07 +02:00
Reefsoft 36f10a9947 Fixed a port numbering issue 2026-05-26 00:00:02 +02:00
Reefsoft fc1731fad6 Added Gogs to example config readme 2026-05-26 00:00:02 +02:00
Reefsoft f949575a01 Fix style again 2026-05-26 00:00:02 +02:00
Reefsoft 35d0d8005d Fix style issues 2026-05-26 00:00:02 +02:00
Reefsoft 92d1d83282 Fixed the same nitpicks again 2026-05-26 00:00:02 +02:00
Reefsoft 29b2411c6d Fix a port issue and a Bind DN issue 2026-05-26 00:00:02 +02:00
Reefsoft e96e4c4adf Fixed a problem regarding User DN in SimpleAuth method 2026-05-26 00:00:02 +02:00
Reefsoft 2cd33c7215 Apply patches proposed by CodeRabbit 2026-05-26 00:00:02 +02:00
Reefsoft dfe0773549 Add Simple Auth to Gogs example config 2026-05-26 00:00:02 +02:00
Tim Beermann 52a08d3ad9 doc: added LLDAP_HTTP_URL env variable for SMTP settings
Signed-off-by: Tim Beermann <tibeer@berryit.de>
2026-05-25 23:57:40 +02:00
Valentin Tolmer 2dc6178bd0 chore: bump MSRV to 1.91
Otherwise cargo install wasm-pack doesn't work
2026-05-25 23:45:46 +02:00
Kieran ed7484bffb Added more details to licence warning 2026-05-25 23:45:14 +02:00
Kieran 68fc426ba3 Added example configuration for Elasticsearch + Kibanna 2026-05-25 23:45:14 +02:00
Glujaz a3d4eb04be Update udm_identity_end_point.md
Replaced Member by uniqueMember in Member Attribute. Otherwise the groups are not detected, and the rules are not applied.
2026-05-25 23:41:32 +02:00
VisableSampling dc883a060a Update Alpine release image to 3.22 2026-05-05 02:39:41 +02:00
Valentin Tolmer 82b16a3716 changelog: fix security advisory description 2026-05-01 00:51:22 +02:00
Valentin Tolmer 48a0a8d961 release: v0.6.3
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
v0.6.3
2026-05-01 00:45:35 +02:00
Valentin Tolmer 49dc766184 chore: pin CI wasm-pack install to lockfile
Otherwise cargo install wasm-pack fails in CI
2026-05-01 00:45:35 +02:00
Valentin Tolmer 2b3dbb46de chore: upgrade Juniper to 0.17 2026-05-01 00:45:35 +02:00
Valentin Tolmer 40121b80b7 chore: centralize and upgrade shared Cargo dependencies
Move duplicated Cargo dependencies to the root workspace manifest, switch member crates to workspace dependencies, and align non-conflicting shared feature sets at the workspace level.

Upgrade a number of shared dependencies while consolidating versions across the workspace. This also consolidates the ldap3 dependency in response to GHSA-qcxq-75wr-5cm8: https://github.com/kanidm/ldap3/security/advisories/GHSA-qcxq-75wr-5cm8

Update frontend and migration code for dependency upgrades and clean up manifest structure.
2026-05-01 00:45:35 +02:00
fredericrous b8465212b5 fix(sql-backend-handler): enable lldap_domain "test" feature in dev-deps
lldap_domain::JpegPhoto::for_tests() and uuid helpers are gated behind
the "test" feature on the lldap_domain crate. The sql-backend-handler
dev-deps did not enable that feature, causing ~12 compilation errors in
sql_user_backend_handler.rs and sql_tables.rs when building the test
binary. This unblocks cargo test -p lldap_sql_backend_handler --lib.
2026-04-30 23:44:29 +02:00
Hannes Hauswedell bb2ea7bf36 doc: add opencloud.md 2026-03-29 10:19:27 +02:00
Federico Scodelaro 9fb252759a chore: Better example config 2026-03-24 07:55:28 +01:00
Federico Scodelaro 3a26d2ec4c Update example_configs/stalwart.md
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
2026-03-24 07:55:28 +01:00
Federico Scodelaro 86d9ea10d6 docs(stalwart): Add alias example 2026-03-24 07:55:28 +01:00
dependabot[bot] 2ad634deda build(deps): bump docker/setup-qemu-action from 3 to 4
Bumps [docker/setup-qemu-action](https://github.com/docker/setup-qemu-action) from 3 to 4.
- [Release notes](https://github.com/docker/setup-qemu-action/releases)
- [Commits](https://github.com/docker/setup-qemu-action/compare/v3...v4)

---
updated-dependencies:
- dependency-name: docker/setup-qemu-action
  dependency-version: '4'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-04 22:13:24 +01:00
dependabot[bot] 155bda6bbf build(deps): bump actions/download-artifact from 7 to 8
Bumps [actions/download-artifact](https://github.com/actions/download-artifact) from 7 to 8.
- [Release notes](https://github.com/actions/download-artifact/releases)
- [Commits](https://github.com/actions/download-artifact/compare/v7...v8)

---
updated-dependencies:
- dependency-name: actions/download-artifact
  dependency-version: '8'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-02-27 22:01:45 +01:00
dependabot[bot] 7d1593e266 build(deps): bump actions/upload-artifact from 6 to 7
Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 6 to 7.
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](https://github.com/actions/upload-artifact/compare/v6...v7)

---
updated-dependencies:
- dependency-name: actions/upload-artifact
  dependency-version: '7'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-02-27 18:48:41 +01:00
Sertonix 8c8df11250 cargo: Update wasm-bindgen and lettre 2026-02-24 14:17:17 +01:00
Santi Gonzalez aa1384939b example_config: fix HA for blank displayName 2026-02-19 00:15:12 +01:00
lyzstrik 6f94134fdc refactor(server): migrate to rustls 0.23 and centralize TLS logic (#1389)
This commit upgrades the TLS stack to Rustls 0.23

Key changes:
- Dependencies: Updated 'rustls' (v0.23), 'tokio-rustls' (v0.26), and 'actix-web' (v4.12.1).
- Build Fix: Configured 'rustls' to use the 'ring' provider (disabling default 'aws-lc-rs') to ensure ARMv7 compatibility.
- Refactor: Created 'server/src/tls.rs' to handle certificate loading (DRY).
- LDAP: Updated 'ldap_server.rs' to use the new TLS module and Rustls APIs.
- Healthcheck: Updated 'healthcheck.rs' to use Rustls 0.23 types.
2026-01-31 09:47:11 +01:00
Valentin Tolmer d1904a2759 readme: Add a link to TrueNAS installation guide 2026-01-31 09:42:12 +01:00
Asher Densmore-Lynn 02d92c3261 example_configs: Add Apache WebDAV 2026-01-31 09:41:53 +01:00
Michael Reid 48058540ec example_configs: Installing and Configuring LLDAP on TrueNAS 2026-01-31 09:36:18 +01:00
Copilot 618e3f3062 Fix cn attribute case-insensitive matching in LDAP equality filters (#1363) 2026-01-31 09:34:10 +01:00
jakob42 cafd3732f0 example_configs: add Continuwuity 2026-01-23 13:51:26 +01:00
dependabot[bot] 8588d4b851 build(deps): bump actions/checkout from 6.0.1 to 6.0.2
Bumps [actions/checkout](https://github.com/actions/checkout) from 6.0.1 to 6.0.2.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v6.0.1...v6.0.2)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: 6.0.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-01-22 21:28:51 +01:00
Hobbabobba 2f70e2e31f example_configs: add Semaphore 2026-01-13 19:09:36 +01:00
lwintermelon a9d04b6bdf example_config: Add gerrit 2026-01-09 08:02:06 +01:00
Osi Bluber c03f3b5498 docs(bootstrap): add password_file for user configs 2026-01-07 18:45:32 +01:00
Copilot ac55dfedc4 app: Remove password length validation from login form 2026-01-06 23:37:01 +01:00