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-recreateDownload 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 buildFor Docker-based setups mount or copy the jar to /opt/keycloak/providers.
You may want to check docker-compose.yml as an example.