3
votes

I'm new to Camunda and starting a new project that needs to integrate a workflow engine. I followed the examples especially Spring Boot ones, since I'm integrating Camunda in a spring-boot project.

I have some newbie questions:

Is it possible to create user tasks in Camunda without referring to Camunda UI to assign them ?

Is it mandatory to be authenticated (via Camunda login process) to start in a flow process ?

It is possible to use an authentication provider not implementing org.camunda.bpm.engine.rest.security.auth.AuthenticationProvider to authenticate users ? (My application has its own authentication/authorization process on spring security and I wonder if I can use it in Camunda)

My project has already its business logic of users, roles, groups, authentication... How can I use them with Camunda ? In other words, it is really mandatory to work with Camunda entities and UI (tasklist, cockpit...)

Thanks in advance for your answers

1

1 Answers

5
votes

You don't have to use Camunda's web applications and REST endpoints. At the core, Camunda has a Java API that you can embed into your application. With the Spring Boot Starter, you would simply inject the ProcessEngine object into your beans.

In terms of identity and authorization management, there are various approaches. The baseline is that you don't have to use Camunda's solutions for these. The Java API works perfectly fine without any users and authorizations in Camunda's database. You could build any identity and authorization checks on top of Camunda's Java API. For fine-grained authorizations with respect to Camunda's entities (e.g. a user may only access some of all the tasks), you would probably have to use Camunda's authorization concept, because it performs access checks on the SQL query level.