Here are the main parameters to map eXo users to your directory:
<field name="userURL"><string>ou=users,ou=portal,dc=exoplatform,dc=org</string></field>
<field name="userObjectClassFilter"><string>objectClass=person</string></field>
<field name="userLDAPClasses"><string>top,person,organizationalPerson,inetOrgPerson</string></field>
userURL: The base dn for users. Users are created in a flat structure under this base with a dn of the form: ldap.userDN.key=username,userURL.
For example:
uid=john,cn=People,o=MyCompany,c=com
However, if users exist deeply under userURL, eXo will be able to retrieve them.
For example:
uid=tom,ou=France,ou=EMEA,cn=People,o=MyCompany,c=com
userObjectClassFilter: The filter that is used under userURL branch to distinguish eXo user entries from others.
For example, John and Tom will be recognized as valid eXo users but EMEA and France entries will be ignored in the following subtree:
uid=john,cn=People,o=MyCompany,c=com objectClass: person … ou=EMEA,cn=People,o=MyCompany,c=com objectClass: organizationalUnit … ou=France,ou=EMEA,cn=People,o=MyCompany,c=com objectClass: organizationalUnit … uid=tom,ou=EMEA,cn=People,o=MyCompany,c=com objectClass: person …
userLDAPClasses: The comma separated list of classes used for user creation.
When creating a new user, an entry will be created with the given objectClass attributes. The classes must at least define cn and any attribute referenced in the user mapping.
For example: Adding the user Marry Simons could produce:
uid=marry,cn=users,ou=portal,dc=exoplatform,dc=org objectclass: top objectClass: person objectClass: organizationalPerson objectClass: inetOrgPerson …
The following parameters map LDAP attributes to eXo User java objects attributes.
<field name="userUsernameAttr"><string>uid</string></field>
<field name="userPassword"><string>userPassword</string></field>
<field name="userFirstNameAttr"><string>givenName</string></field>
<field name="userLastNameAttr"><string>sn</string></field>
<field name="userDisplayNameAttr"><string>displayName</string></field>
<field name="userMailAttr"><string>mail</string></field>
userUsernameAttr: The username (login).
userPassword: The password (used when the portal authentication is done by eXo login module).
userFirstNameAttr: Firstname of the user.
userLastNameAttr: Lastname of the user.
userDisplayNameAttr: Display name of the user.
userMailAttr: Email address of the user.
In the previous example, the user Marry Simons could produce:
uid=marry,cn=users,ou=portal,dc=exoplatform,dc=org objectclass: top objectClass: person objectClass: organizationalPerson objectClass: inetOrgPerson …