I am thinking about adding LDAP example, which can be used as a base for LDAP mappers based blog and screencast.

It will contain the application to show some claims (also both singlevalued and multivalued attributes). It will also contain JSON realm with UserFederation configuration pointing to our ApacheDS and LDIF with some simple users for testing. I already added end-to-end test to the testsuite (LDAPMultipleAttributesTest.ldapPortalEndToEndTest )


The only possible problem is how to easily bootstrap ApacheDS based LDAP servers in user's environment. I am thinking about 3 approaches:

a) Point to the embedded ApacheDS server from our testsuite. This will be easy to do and it's what Kerberos example is already doing . Problem is that it requires people to checkout the keycloak sources through github and build them through maven, so not very user friendly

b) Create docker image for ApacheDS servers (one for ldap example and another for kerberos). Not sure if it's fine to require users to install docker (even more pain might be on windows, when they need boot2docker or something...)

c) Packaging with ApacheDS based servers directly into our example package, so people can just run something like:

java -jar keycloak-examples/ldap/apacheds-embedded.jar -Dldif.location=keycloak-examples/ldap/example.ldif

and similarly for kerberos.

For me it's easiest to go with (a) but not sure about usability... Regarding usability (c) looks best but it's much more work.

WDYT?
Marek