IdentityService usage in flowable-task app

Hi,

I am migrating an Activiti app to use Flowable 6.0.0 and the flowable-task app frontend to execute the user tasks.
I have a couple of ServiceTasks that obtain user information from Flowable using the IdentityService. This worked fine in Activiti, but I am now having problems.

In the flowable-task app there is no IdentityService bean created and after looking a little in the source code I saw that user information is obtained using the RemoteIdmService in the flowable-ui-common package (with the actual implementation using the flowable-idm app rest api)

Is there a preferred way to use the IdentityService in the flowable-task app?

I can see Three possible solutions:

  1. Extend RemoteIdmService to implement IdentityService and add the corresponding REST APIs to the flowable-idm app.
  2. Configure an IdentityService in the flowable-task app. I guess this requires setting up an idm Engine within the flowable-task app.
  3. Depend the ServiceTasks directly on RemoteIdmService instead of the IdentityService. Then the ServiceTask will no longer depend on the core flowable APIs and will be specific to the flowable-task app.

Thanks for any help!

Paul

Hi Paul,

Because the IDM engine now runs in a separate app, there’s a REST call needed indeed.
You could also include the IDM engine in the Flowable Task app, but for single sign-on reasons we externalized it.
If your service tasks depend a lot on IdentityService calls, then maybe this is the easiest solution.
Otherwise I think depending directly on the RemoteIdmService is probably the best maintainable solution.

Best regards,

Tijs

Thanks Tijs.

I am only using the IdentityService to retreive basic user information like name & email address. It sounds like using RemoteIdmService will be the most simple and pragmatic solution, so I’ll try that. I’d rather not have the added complexity of an additional configuration for the IdmEngine.

Regards,
Paul