Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Table of Contents

Introduction


English

The Sync LDAP User Directory Manager is a hybrid solution that allows you to make use of the user objects from your organization's LDAP server and maintaining organization structure (organization / department / group) locally inside Joget.

This plugin allows you to import user objects from LDAP server on demand into Joget built in user directory manager to reduce its dependency on the LDAP server for improved performance.

The primary benefit for using Sync LDAP is better performance for user-data related processing

    • Joget only talks to LDAP for AD user authentication, everything else refers to local record

The built in user directory manager is still the primary handler when this plugin is activated. Once you have synchronized the users to the local directory manager, you can assign the users to your organization/department/group/grade which created locally.

With the use of this plugin, we will be able to reduce the conventional load and dependency on the LDAP server and to only use it for authentication purpose.

A new feature added in Joget DX is the "Auto schedule sync" property. The Joget admin can also click on the Sync Users button to manually perform an LDAP sync.

Joget identifies users on Sync LDAP if the password column in database is "(NULL)", which causes the following to take place:


  • Users cannot edit their profile.
  • Admin cannot use @"Admin Bar > Users > Setup User"@ to edit user information.
  • Only records with password equal NULL will sync to your LDAP directory.

If the user wants to change his password, recommended is to change it in LDAP/AD.

  • If there's a new user in LDAP, it will be created in Joget user database. If a user from LDAP does not exist anymore in LDAP but exists in Joget, then the user will get disabled/inactive in Joget, and it will never be deleted.
    • If LDAP user is deleted from AD, it will not delete the record in dir_user
    • Upon sync, related local user record will be set to inactive
    • If local user record is deleted instead but still exist in AD, it will just be re-imported again upon next sync


Image AddedImage Removed

Sync LDAP Properties

Configuring Sync LDAP

Image AddedImage Removed
Figure 1: Configure Sync LDAP

Image AddedImage Removed
Figure 2: Sync Organization Enabled

This is a new feature in Joget DX.
NameDescription / Sample Value
URL

ldap://IP_ADDRESS:389

Admin Username (Principal) 

cn=admin,dc=joget,dc=org

Admin Password (Credential) 
Input the admin password for your LDAP/AD.
Root DNSet the root DB, for example "eg. DC=Joget,DC=org".
Sync Organization
Panel
borderColorpurple
borderWidth1
titleBGColor#ddccff
borderStylesolid
titleNew Feature

Perform synchronization not just to user objects, but to the whole organizational structure including Group, Department, Grade as well.

By enabling this feature, you will need to configure the following as well.

NameDescription / Sample Value
Organization ID

Declare a organization ID to bind all the users synced from LDAP with.

If the organization declared does not exists in Joget, a new one will be created.

Organization Name

Declare a organization name to bind all the users synced from LDAP with.

If the one declared here is not the same as the existing one in Joget, it will be updated with the value set here.

Please refer to documentation for setting up Group, Department, and Grade in LDAP Directory Manager.

Auto schedule sync?
solidThis is a new feature in Joget DX.
Panel
borderColorpurple
borderWidth1
titleBGColor#ddccff
borderStyle
Info
titleNew Feature
User Management

If there's a new user in LDAP, it will be created in Joget user database.

If a user from LDAP does not exist anymore in LDAP but exists in Joget, then the user will get disabled in Joget, and it will never be deleted.
Refer LDAP User Management


Auto schedule sync?

Clicking this checkbox to automatically sync your LDAP on a schedule, will display additional options as follows:

  • Sync Interval (Hour)
  • Sync Initial Start Time (HH:mm)

User

Image RemovedImage Added


Figure 2: User Properties

NameDescription / Sample Value
User Base DN

Set the user base DN property.

Info
titleTips

If you set the "User Base DN" to your LDAP Root DN, it means that the search will start from the Root DN until it finds all the results that matched the search filter.

So, setting the "User Base DN" precisely is very important as it will decide where the search is starting from. It will save all the unnecessary search between the Root DN to your "User Base DN".

Code Block
titleRoot DN
DC=joget,DC=org
Code Block
titleUnder the Root DN, you have the following DN:
DC=HR,DC=joget,DC=org
DC=Product Department,DC=joget,DC=org
DC=Operation,DC=joget,DC=org
DC=Users,DC=joget,DC=org

If your users are all under "DC=Users, DC=joget,DC=org", you should set this to "User Base DN".
By doing this, it will not go through all the other entries and it's child entries before reaching "DC=Users, DC=joget,DC=org".

User Import Search Filter

(objectClass=person)

Info
titleTips
Code Block
titleValue
(&(objectClass=person)(|(cn=admin)(cn=cat)(cn=jack)(cn=john)(cn=jackie)))

This mean all the LDAP entries which have "objectClass" attribute equals to "person" and "cn" attribute equals to either "admin", "cat", "jack", "john" or "jackie" are Joget users.

So, when a login is performed by "admin", the search filter will add additional filter and become "(&(&(objectClass=person)(|(cn=admin)(cn=cat)(cn=jack)(cn=john)(cn=jackie)))(cn=admin))". 

You will notice an extra (cn=admin) is added to the search filter to make sure it return only the "admin" user.

Info
titleUser License

User license determines on how many eventual users (sorted alphabetically) from your LDAP/AD can log in into the system. You can make use of this attribute to control amount of users returned from your LDAP.

For the trial license, there is a 3-user limitation: if you would like to perform tests on several test users, you will need to remove all the other users until your test user can be in the top 3 spots in the user list.
Do refer LDAP User Management

More details at LDAP Directory Manager#ConfiguringTheUserImportSearchFilter.

Attribute Mapping - Username

cn

Attribute Mapping - First Name

givenName

Attribute Mapping - Last Name

sn

Attribute Mapping - Email

mail

Attribute Mapping - Status

status

Attribute Mapping - Time Zone

8

Attribute Mapping - Locale

en_US


Employment

Image AddedImage Removed
Figure 3: Employment Properties

NameDescription / Sample Value
Attribute Mapping - Employee CodeemployeeCode
Attribute Mapping - Job TitlejobTitle
Attribute Mapping - Report ToUse this if an LDAP user that a user reports to is kept in LDAP user entry. eg. manager
Map To "Report To" Entry Attribute Used together with "Attribute Mapping - Report To". eg. distinguishedName
Attribute Mapping - MetasAdditional attributes to retrieve using #user.USERNAME.meta.KEY# or #currentUser.meta.KEY#

Admin Role

Image RemovedImage Added


Figure 4: Admin Role Properties

NameDescription / Sample Value
Admin Role Base DNSet the Admin Role Base DN
Admin Role Import Search Filtereg. (objectClass=group)
Attribute Mapping - Users

Use this if the admin role of user(s) is kept in LDAP entry. eg. member

Map To LDAP User Entry Primary AttributeMap To LDAP User Entry Primary Attribute

Advance

Image AddedImage Removed

Figure 5: Advance Properties

...

Related Documentation


LDAP Directory Manager

LDAP User Management

Security Enhanced Directory Manager

...