Shared process instance sandboxing based on tenant

Hello friends,

My plan is to use sigle-process-ending-with-tenant-identifiers approach for multitenancy

Now i have a shared process which will be instanciated for multiple tenants. Will it be possible to assign tenant-id to process instance? My requirements is that tenants should not be able to access other tenant’s process instances for same shared definition. Is this possible?

Note: we will be using Camuda REST apis for process instanciation and other other activities

You can add a tenant-id as a parameter using the REST API

https://docs.camunda.org/manual/7.6/reference/rest/process-definition/post-start-process-instance/#parameters

The tenant-id parameter you mentioned is for “tenant-id of the process defintion” to instanciate. Note that I don’t have tenant definition, it’s shared definition which i want to instanciate for a tenant.

Is this possible?

See https://github.com/camunda/camunda-bpm-examples/tree/master/multi-tenancy/tenant-identifier-shared-definitions

1 Like

Hi @Techcoze,

it’s not possible to pass the tenant-id directly while creating a process instance (e.g., via start process instance Rest call). Instead, you must provide a TenantIdProvider that provides the tenant id of a created process instance.

Best regards,
Philipp

Hi,

Is there still no way to do this without a native java implementation?

We do need this feature, but would certainly prefer to use the rest api if at all possible.

No updates on this side.

Thank you for the response. I will look into a native implementation.