/
Embedded LDAP Configuration

Embedded LDAP Configuration

Description

The Embedded LDAP application contains an LDAP server (OpenDJ version 2.4.6) that has a default set of schemas and users loaded to help facilitate authentication and authorization testing.

Default Settings

Ports

ProtocolDefault Port
LDAP1389
LDAPS1636
StartTLS1389

Users

LDAP Users
UsernamePasswordGroupsDescription
testuser1password1 General test user for authentication
testuser2password2 General test user for authentication
nromanovapassword1avengersGeneral test user for authentication
lcagepassword1admin, avengersGeneral test user for authentication, Admin user for karaf
jhowlettpassword1admin, avengersGeneral test user for authentication, Admin user for karaf
pparkerpassword1admin, avengersGeneral test user for authentication, Admin user for karaf
jdrewpassword1admin, avengersGeneral test user for authentication, Admin user for karaf
tstarkpassword1admin, avengersGeneral test user for authentication, Admin user for karaf
bbannerpassword1admin, avengersGeneral test user for authentication, Admin user for karaf
srogerspassword1admin, avengersGeneral test user for authentication, Admin user for karaf
adminadminadminAdmin user for karaf
LDAP Admin
UsernamePasswordGroupsAttributesDescription
adminsecret  Administrative User for LDAP

Schemas

The default schemas loaded into the LDAP instance are the same defaults that come with OpenDJ.

Schema File NameSchema Description (http://opendj.forgerock.org/doc/admin-guide/index/chap-schema.html)
00-core.ldifThis file contains a core set of attribute type and objectlass definitions from several standard LDAP documents, including draft-ietf-boreham-numsubordinates, draft-findlay-ldap-groupofentries, draft-furuseth-ldap-untypedobject, draft-good-ldap-changelog, draft-ietf-ldup-subentry, draft-wahl-ldap-adminaddr, RFC 1274, RFC 2079, RFC 2256, RFC 2798, RFC 3045, RFC 3296, RFC 3671, RFC 3672, RFC 4512, RFC 4519, RFC 4523, RFC 4524, RFC 4530, RFC 5020, and X.501.
01-pwpolicy.ldifThis file contains schema definitions from draft-behera-ldap-password-policy, which defines a mechanism for storing password policy information in an LDAP directory server.
02-config.ldifThis file contains the attribute type and objectclass definitions for use with the directory server configuration.
03-changelog.ldifThis file contains schema definitions from draft-good-ldap-changelog, which defines a mechanism for storing information about changes to directory server data.
03-rfc2713.ldifThis file contains schema definitions from RFC 2713, which defines a mechanism for storing serialized Java objects in the directory server.
03-rfc2714.ldifThis file contains schema definitions from RFC 2714, which defines a mechanism for storing CORBA objects in the directory server.
03-rfc2739.ldifThis file contains schema definitions from RFC 2739, which defines a mechanism for storing calendar and vCard objects in the directory server. Note that the definition in RFC 2739 contains a number of errors, and this schema file has been altered from the standard definition in order to fix a number of those problems.
03-rfc2926.ldif

This file contains schema definitions from RFC 2926, which defines a mechanism for mapping between Service Location Protocol (SLP) advertisements and LDAP.

03-rfc3112.ldifThis file contains schema definitions from RFC 3112, which defines the authentication password schema.
03-rfc3712.ldifThis file contains schema definitions from RFC 3712, which defines a mechanism for storing printer information in the directory server.
03-uddiv3.ldifThis file contains schema definitions from RFC 4403, which defines a mechanism for storing UDDIv3 information in the directory server.
04-rfc2307bis.ldifThis file contains schema definitions from the draft-howard-rfc2307bis specification, used to store naming service information in the directory server.
05-rfc4876.ldifThis file contains schema definitions from RFC 4876, which defines a schema for storing Directory User Agent (DUA) profiles and preferences in the directory server.
05-samba.ldifThis file contains schema definitions required when storing Samba user accounts in the directory server.
05-solaris.ldifThis file contains schema definitions required for Solaris and OpenSolaris LDAP naming services.
06-compat.ldifThis file contains the attribute type and objectclass definitions for use with the directory server configuration.

Configuration

Starting / Stopping

The embedded ldap application installs a feature with the name ldap-embedded. Installing and Uninstalling this feature will start and stop the embedded ldap server. This will also install a fresh instance of the server each time. If changes need to persist, stopping and starting the embedded-ldap-opendj bundle should be done (rather than installing/uninstalling the feature).

All settings, configurations, and changes made to the embedded LDAP instances are persisted across DDF restarts. If DDF is stopped while the the LDAP feature is installed and started, it will automatically restart with the saved settings on the next DDF start.

Settings

The configuration options are located on the standard DDF configuration web console under the title LDAP Server. It currently contains three configuration options.

Configuration NameDescription
LDAP PortSets the port for LDAP (plaintext and StartTLS). 0 will disable the port.
LDAPS PortSets the port for LDAPS. 0 will disable the port.
Base LDIF FileLocation on the server for a LDIF file. This file will be loaded into the LDAP and overwrite any existing entries. This option should be used when updating the default groups/users with a new ldif file for testing. The LDIF file being loaded may contain any ldap entries (schemas, users, groups..etc). If the location is left blank, the default base LDIF file will be used that comes with DDF.

Limitations

Current limitations for the embedded LDAP instances include:

  1. Inability to store the LDAP files / storage outside of the DDF installation directory.  This results in any LDAP data (i.e. LDAP user information) being lost when the ldap-embedded feature is uninstalled.
  2. Cannot be run standalone from DDF. In order to run embedded-ldap, the DDF must be started.

Windows Workaround

The LDAP can sometimes not work properly on Windows. This is caused by a directory/file permissions issue.

To fix either:

  1. Log in to Windows as the admin user

Or, if the DDF has to be run from a specific user account:

  1. Start DDF normally
  2. Attempt to start LDAP feature (it should fail)
  3. Stop DDF and change permissions on the entire DDF directory to allow the user to have full permissions.
  4. Restart DDF, LDAP feature should be started.
  5. Edit the LDAP configuration with a path to an LDIF file. The original one gets ignored
  6. LDAP should now work properly

External Links

Location to the default base LDIF file in the DDF source code: https://github.com/codice/ddf/blob/master/ldap/embedded/ldap-embedded-opendj/src/main/resources/default-users.ldif

OpenDJ Documentation: http://opendj.forgerock.org/docs.html

 

Related content

Alliance 1.0.0 Release Notes
Alliance 1.0.0 Release Notes
More like this
Alliance 0.3.6 Release Notes
Alliance 0.3.6 Release Notes
More like this
Workspace Design
Workspace Design
More like this
Alliance 1.1.0 Release Notes
Alliance 1.1.0 Release Notes
More like this
Testing
Testing
More like this
Artemis Security Design Discussion
Artemis Security Design Discussion
More like this