Commit Graph

22 Commits

Author SHA1 Message Date
Pascal Bleser
99eb9bfb57 groupware: docs: add a quick copy-pastable block for running ldapsearch 2026-06-16 16:51:37 +02:00
Pascal Bleser
6b8f7207d6 groupware: add OIDC authentication support between Groupware backend and Stalwart
* re-implement the auth-api service to authenticate Reva tokens
   following the OIDC Userinfo endpoint specification

 * pass the context where necessary and add an authenticator interface
   to the JMAP HTTP driver, in order to select between master
   authentication (which is used when GROUPWARE_JMAP_MASTER_USERNAME and
   GROUPWARE_JMAP_MASTER_PASSWORD are both set) and OIDC token
   forwarding through bearer auth

 * add Stalwart directory configuration "idmoidc" which uses the
   OpenCloud auth-api service API (/auth/) to validate the token it
   received as bearer auth from the Groupware backend's JMAP client,
   using it as an OIDC Userinfo endpoint

 * implement optional additional shared secret to secure the Userinfo
   service, as an additional path parameter
2026-06-16 16:51:35 +02:00
Pascal Bleser
540f063923 groupware: use the OIDC client ID 'web' instead of 'groupware' 2026-06-16 16:50:52 +02:00
Pascal Bleser
e0a0b7d3eb groupware: update DEVELOPERS.md based on Jörn's feedback 2026-06-16 16:50:52 +02:00
Pascal Bleser
65ec598030 groupware: also update DEVELOPER.md with new OpenAPI documentation generation tooling 2026-06-16 16:50:52 +02:00
Pascal Bleser
cd9276e6f9 groupware: add recipe for using ldapsearch in an Alpine container to DEVELOPER.md 2026-06-16 16:50:10 +02:00
Pascal Bleser
da2743de95 groupware: add instructions for using stalwart-admin 2026-06-16 16:49:44 +02:00
Pascal Bleser
bfde4c5926 groupware: DEVELOPER.md: add note explaining LDAPTLS_REQCERT 2026-06-16 16:49:44 +02:00
Pascal Bleser
fe78e837ce groupware: DEVELOPER.md: explain how to set a quota on a user using the Stalwart management API 2026-06-16 16:49:44 +02:00
Pascal Bleser
a8fbb38a19 groupware: add Mermaid diagrams to describe the two setup options 2026-06-16 16:49:44 +02:00
Pascal Bleser
3e3cdbce0f groupware: further updates to make everything work with the builtin LDAP and OIDC 2026-06-16 16:49:44 +02:00
Pascal Bleser
51219c69bf groupware: for /accounts/all/emails/latest/summary, rename the ?unread query parameter into ?seen as that is more intuitive 2026-06-16 16:49:43 +02:00
Pascal Bleser
e9a131a4d7 groupware: make everything also work with the built-in LDAP and IDP 2026-06-16 16:49:43 +02:00
Pascal Bleser
08c3f71b12 groupware: improve instructions in DEVELOPER.md 2026-06-16 16:49:43 +02:00
Pascal Bleser
f582f09121 groupware: minor improvements to the DEVELOPER.md 2026-06-16 16:49:43 +02:00
Pascal Bleser
30742044ad services/groupware/DEVELOPER.md: adapt to new path for the opencloud_full deployment 2026-06-16 16:49:43 +02:00
Pascal Bleser
1ab16c996a Docker Compose Groupware improvements
* made a few changes in order to further simplify the setup for
   developers of the Groupware backend

 * add STALWART_DOMAIN to deployments/examples/opencloud_full/.env

 * adapt the Stalwart configuration file to not set server.hostname and,
   instead, pick it up from /etc/hostname, which is set by Docker
   Compose as we can use default values for STALWART_DOMAIN there, in an
   analogous fashion to the other containers in that project

 * add config/keycloak/clients/groupware.json to avoid requiring manual
   configuration of Keycloak via the admin web UI

 * Stalwart container:
   - listen for SMTPS on :1465
   - remove the stalwart-logs volume, not needed (logs are going to
     stdout)

 * updated services/groupware/DEVELOPER.md:
   - refer to a variable OCDIR to make instructions more copy-pasteable
   - remove manual Keycloak configuration section as it is now obsolete,
     replaced by provisioning a configuration file instead
2026-06-16 16:49:43 +02:00
Pascal Bleser
e4602bcc14 fix(groupware): update DEVELOPER.md imap-filler usage since it was updated to use flags instead of environment variables 2026-06-16 16:49:43 +02:00
Pascal Bleser
183549cf09 docs(groupware): more developer instructions 2026-06-16 16:49:43 +02:00
Pascal Bleser
d93b5e963b more updates to the Groupware DEVELOPER.md 2026-06-16 16:49:43 +02:00
Pascal Bleser
379cabe124 docs(groupware): add configuration instructions to DEVELOPER.md 2026-06-16 16:49:43 +02:00
Pascal Bleser
2f3037f6d6 docs(groupware): add services/groupware/DEVELOPER.md 2026-06-16 16:49:43 +02:00