...
anchortop
...
This article is organized in the following sections:
...
Starting the LDAP server
In this release of Geronimo, the Apache Directory v0.92 is already included with the distribution although it is not started by default. You can either start the server from command line using the deployer tool or via the Geronimo Administration Console.
...
At this point it is assumed that you have installed an LDAP client and you are capable of exporting/importing an .ldif
file to a directory server.
Source Code
You can checkout the source code of this sample from SVN:
svn checkout http://svn.apache.org/repos/asf/geronimo/samples/trunk/samples/ldap-sample-app
Add LDAP entries
...
Once you connect to the Geronimo Directory server you will see the initial configuration, this configuration can be exported as a backup in a ldif file. Depending the LDAP client you are using the export/import steps will be different. When you For example, to export the initial configuration using the ldapsearch tool execute the following command:
ldapsearch -h localhost -p 10389 -b "ou=system" -D "uid=admin,ou=system" -w secret -x "(objectclass=*)"
When you export the initial configuration you get an ldif file with a content similar as the one shown in the following example.
...
Now you need to import the entries needed to run the sample application. Packaged with the sample application is a sample .ldif
file with all the entries necessary to run the LDAP sample application, this file is located in <ldap_home>/ldap-sample.ldif.
The following example shows the content of the ldap-sample.ldif
file.
...
borderStyle | solid |
---|---|
title | ldap-sample.ldif |
...
To import the data with ldapmodify tool execute the following command:
ldapmodify -h localhost -p 10389 -D "uid=admin,ou=system" -w secret -x -a -f <ldap_home>/ldap-sample.ldif
The following example shows the content of the ldap-sample.ldif
file.
...
Once the file is imported you should get a confirmation that five entries were successfully imported.
...
The LDAP sample application provides a security realm that needs to be deployed before the deployment of the application itself. This realm is located in <ldap_home>/ldap-realm.xml and the content is illustrated in the following example.
...
...
This deployment plan tell Geronimo all the connection and search paraments against the LDAP database. This plan also specifies to record each login attempt into the login-attempts.log
log file.
...
Once deployed you should see a confirmation message similar to the following example: bgColor No Format
#000000
Back to Top
For further details refer to the LDAP Realm section.
...
The deployment plans are located in the <ldap_home>/WEB-INF directory. Clearly, geronimo-web.xml is the Geronimo specific deployment plan. It provides the details on what security realm to use and user role mappings as well as the Geronimo specific namespace used to identify the elements in the security configuration. Common to other types of applications, not just security, the deployment plan also provides the main namespace for the deployment plan, a module identification (optional), a parent module configuration ID (also optional) and a context root. The following example illustrates the Geronimo specific deployment plan.
...
...
The first part of the deployment plan is straight forward. However, the security configuration is tricky. The <security-realm-name> is described in the <security> element through a sequence of declarations in the <realms> element.
...
The web.xml deployment descriptor shown in the following example (also located in the <ldap_home>/WEB-INF diretory) adds security constraints based on the location of the files.
...
...
Package the sample application
...
Once the Web application is successfully deployed you should see a confirmation message similar as the one shown in the following example:
No Format
To test the LDAP application open a Web browser and access the following URL:
...