Integration with LDAP

HI Zholaman,

You can build the project from the distro folder using the Apache Ant script.
When you have installed Apache Ant, you can use execute the ant command from the distro folder and the project should be build. Let me know if you run into issues.

Best regards,

Tijs

Dear Tijs,

thank you a lot! I will try.

Best regards,
Zholaman

Dear Tijs,

I have couple of questions regarding building Flowable from the source:

  1. What version of Java we need to use - v7 or v8 ?
  2. We need to use Java SE or Java EE ?
  3. What Java compiler we should use from Oracle or OpenJDK ?

Thank you in advance !

Best regards,
Zholaman

Hi Zholaman,

  1. v8
  2. Java SE
  3. Oracle

Best regards,

Tijs

Dear Tijs,

Thanks!

Best Regards,
Zholaman

Dear Tijs,

I have did:

  1. Installed Oracle SE Java JDK v1.9.121 (x64)
  2. Cloned master rep.: GitHub - flowable/flowable-engine: A compact and highly efficient workflow and Business Process Management (BPM) platform for developers, system admins and business users. , to folder - D:\java_project\flowable-engine
  3. Set JAVA_HOME=C:\Program Files\Java\jdk1.8.0_121\

So after open src of Flowable from ‘D:\java_project\flowable-engine’ in Eclipse (File->Open Projects from File System…) I have faced with the following error messages (in quantity of 100 pcs):

Description: Missing artifact org.flowable:flowable-engine-common-api:jar:6.0.1-SNAPSHOT (this row contains different values)
Resource Path Location: pom.xml (single value for all errors)
Path: /flowable-app-rest (this row contains different values)
Location: Line 2 (this row contains different line numbers)
Type: Maven Dependency Problem(single value for all errors)

pom.xml file in ‘Line 2’ contains the following text:

xsi:schemaLocation=“http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd


So what I need to do to resolve the above issues (dependencies) ?

Best regards,
Zholaman

Hi,

Did you try to run the Apache Ant script in the distro folder?
It should not be necessary to import the code into any IDE (like Eclipse), only running the Ant script should be fine.

Best regards,

Tijs

Yes I tried to launch build.xml through integrated in Eclipse Ant but no success. Now I try to install standalone Ant tool in different folder and launch it.

Best regards,
Zholaman

Dear Tijs,

I have installed Ant and tried to run it in the directory ‘D:\java_project\flowable-engine\distro’ which is containes the build.xml file.

I got the following error message: link

Best regards,
Zholaman

You also need Maven installed. To make it easier, I will create a build for you of master so you can test it. I’ll post a link on this forum post in the next couple of days.

Best regards,

Tijs

Dear Tijs,

Firstly I’m sorry for bother you! I beg you not to bother yourself, could you just suggest directions, I’ll do the rest by myself. I have found instruction how to deploy Maven. After Maven installation I will try again. I want to walk through all these steps to create a document (procedure) to all newbies like me and publish it on the Google++ link

Thank you very much Tijs!

Best regards,
Zholaman

Tijs,

I have installed Maven and run ant, but faced with error. So let me ask what OS do you use under which you are building the Flowable ?

Best regards,
Zholaman

Ok that’s indeed to be expected on Windows (I use Mac OSx). But this is at the end of building the distro (building the user guide), so you should already have the Flowable Task application WAR file that you can use to test with AD.

Best regards,

Tijs

Thanks Tijs,

Indeed I got war files :slight_smile:

Best regards,
Zholaman

Dear Tijs,

First of all I have build Flowable from the src again (today) and checked intagration with LDAP server (embedded in Apache Studio) all working correctly.

Now I tried integration Flowable with MS Active Directory but no success a while. So I have couple of questions and I kindly ask you to answer on them when you have time.

1. In flowable-ui-app.properties (flowable-idm module) we have the option - “ldap.user=uid=admin” so what ‘uid’ is, can we use different indetificator insteed it ? For example, in MS AD we do not have ‘uid’, but there are two identificator what we can to use:

a) cn (like ‘John Deep’, with space character between first and last names);
b) sAMAccountName (like ‘john.deep’, without space character)

2. What type of data and in what format we need to return to the following two variables:

ldap.query.userbyid=?
ldap.query.userbyname=?

3. If we do not have ‘uid’ identificator in MS AD, what exactly we need to change in the following LDAP query or if we need to change only ‘uid’ parameter then what we should to use instead ‘uid’:

ldap.query.userbyid=(&(objectClass=person)(uid={0}))

Thanks in advance !

Best regards,
Zholaman

Hi Zholaman,

I’m not very familiar with Active Directory, maybe someone else from the community is able to help with these questions?
The ldap.user property is the value that is used to logon to the LDAP server together with ldap.password. So this needs to be your AD login.
For the queries, you would need to define a valid LDAP query to fetch a user by its id, where id is the username of the user that wants to login.

Best regards,

Tijs

Hi Zholaman,

When 6.0.0.1 is released I’ll post A working active directory config.
I’ll include a “translation” between the ldap properties and the AD/LDAP schema.

Thanks Sebastiaan!

Best regards,
Zholaman

Thanks Tijs!

Best regards,
Zholaman

Dear Sebastiaan,

JYI,

Let me draw your attention on some moment relating to integration with Active Directory.

When new user are creating they usually fall down under Users CN (which is default for new users), but in some cases System Administrators have different folder for new users.
So as I understand Flowable get admin login by ‘Distinguished Name’ (in case of LDAP) BUT what happens if ‘Distinguished Name’ of Administrator login/user will differ from ‘Distinguished Name’ of other domain users ?

Example:
“Distinguished Name” of Administrator:
CN=Administrator,CN=Users,DC=work,DC=company,DC=com

“Distinguished Name” of ordinary AD users:
CN=Sophie Marceau,OU=employees,DC=work,DC=company,DC=com

CN = Common Name
OU = Organizational Unit
DC = Domain Component

Thank you in advance for your answer!

Best regards,
Zholaman