Custom Keycloak LDAP Group Mapper which creates groups and group memberships retrieved from Confluence pages (representing the group hierarchy) and page properties (providing a HTML table with a group member column) via Confluence's REST API.
This project uses ideas or artifacts from other projects, e.g.
- The peanuts-userprovider from Niko Köbler's keycloak-extensions-demo project.
- The test support KeycloakEnvironment and OpenLDAP support from Thomas Darimont's keycloak-project-example
Kudos to Niko and Thomas for their great work!
There's a docker-compose.yml
definition to use with Docker Compose. It uses the same configuration as the integration tests.
Build and run all the stuff with:
./mvnw clean package -DskipTests && docker compose up --force-recreate
Download a release (*.jar file) that works with your Keycloak version from the list of releases. Follow the below instructions depending on your distribution and runtime environment.
Copy the jar to the providers
folder and execute the following command:
${kc.home.dir}/bin/kc.sh build
For Docker-based setups mount or copy the jar to /opt/keycloak/providers
.
You may want to check docker-compose.yml as an example.