Skip to main content
Version: 8.9 (unreleased)

Identity migration (experimental)

Migrate identity data.

info

The identity migration mode of the Data Migrator is in an early development stage and will not be released before Camunda 8.9 (April 2026). You can check the current state and track progress in the GitHub repository.

About identity migration

Identity data refers to:

  • Identities (users, groups, tenants and related memberships).
  • Authorizations.

Requirements and limitations

As of today, the following requirements and limitations apply:

  • The experimental feature only includes the migration of:
    • Tenants (temporarily excluding tenant memberships)
    • Some authorizations.
  • Migration for other identity entities as well as retrying skipped entities are either not yet implemented or not supported (detailed in the Supported entities section below).
  • Once migration has been triggered, it's strongly recommended not to create new identity data on Camunda 7. Even if migration is attempted again, the new data might not be migrated.

Supported entities

Identities

Identity typeMigration supported
UsersYes
GroupsNot yet
TenantsNot yet
Group MembershipsNot yet
Tenant MembershipsNot yet

Authorizations

Not all authorizations can be migrated from Camunda 7 to Camunda 8 due to differences in the authorization models of both systems.

When identity migration is executed, authorizations that are not supported are skipped and the reason for incompatibility is logged by the migrator. If an authorization contains at least one unsupported permission, the whole authorization is skipped.

The following tables provide an overview of the supported authorizations.

By Authorization Type

Camunda 8 only supports GRANT authorizations. REVOKE and GLOBAL authorizations from Camunda 7 are not supported for migration.

Because in Camunda 7 GRANT authorizations take precedence over REVOKE authorizations, skipping (and therefore ignoring) REVOKE authorizations does not lead to a loss of effective permissions when migrating to Camunda 8.

Authorization TypeMigration supported
GRANTYes
REVOKENo
GLOBALNo

By Resource Type

C7 Resource TypeMigration supportedC8 Resource Type equivalent
ApplicationYesComponent
AuthorizationPartial*Authorization
BatchPartial*Batch
DashboardNo-
Decision DefinitionPartial*Decision Definition
Decision Requirements DefinitionYesDecision Requirements Definition
DeploymentNot yet-
FilterNo-
GroupYesGroup
Group MembershipPartial*Group
Historic Process InstanceNo-
Historic Process InstanceNo-
Historic TaskNo-
Process DefinitionPartial*Process Definition
Process InstanceNo-
ReportNo-
SystemPartial*System
TaskNo-
TenantYesTenant
Tenant MembershipPartial*Tenant
UserYesUser
User Operation Log CategoryNo-

Details for partial migration can be found below.

Partial migration

Some resource types only support partial migration due to differences in the Camunda 7 and Camunda 8 authorization models, which means some permissions (or some combination of permissions) are not supported for migration. The following sections provide details on the supported permissions for these resource types.

Authorization compatibility

In Camunda 7, authorizations for Authorization resources can be fine-grained to specific resource IDs (authorizationId). Camunda 8 only supports the wildcard (*) resource ID for the Authorization type. Therefore, only authorizations with the wildcard resource ID are migrated.

Migration support for individual permissions:

C7 PermissionMigration supportedC8 Permission equivalent
READYesREAD
UPDATEYesUPDATE
CREATEYesCREATE
DELETEYesDELETE
ALLYesREAD, UPDATE, CREATE, DELETE

Batch compatibility

In Camunda 7, authorizations for Batch resources can be fine-grained to specific resource IDs (batchId). Camunda 8 only supports the wildcard (*) resource ID for the Batch type. Therefore, only authorizations with the wildcard resource ID are migrated.

C7 PermissionMigration supportedC8 Permission equivalent
READYesREAD
UPDATEYesUPDATE
CREATEYesCREATE
DELETENo-
READ_HISTORYNo-
DELETE_HISTORYNo-
CREATE_BATCH_MIGRATE_PROCESS_INSTANCESYesCREATE_BATCH_OPERATION_MIGRATE_PROCESS_INSTANCE
CREATE_BATCH_MODIFY _PROCESS_INSTANCESYesCREATE_BATCH_OPERATION_MODIFY_PROCESS_INSTANCE
CREATE_BATCH_RESTART_PROCESS_INSTANCESNo-
CREATE_BATCH_DELETE_RUNNING_PROCESS _INSTANCESYesCREATE_BATCH_OPERATION_CANCEL_PROCESS_INSTANCE, CREATE_BATCH_OPERATION_DELETE_PROCESS_INSTANCE
CREATE_BATCH_DELETE_FINISHED_PROCESS _INSTANCESYesCREATE_BATCH_OPERATION_DELETE_PROCESS_INSTANCE
CREATE_BATCH_DELETE_DECISION_INSTANCESYesCREATE_BATCH_OPERATION_DELETE_DECISION_INSTANCE
CREATE_BATCH_SET_JOB_RETRIESNo-
CREATE_BATCH_SET_REMOVAL_TIMENo-
CREATE_BATCH_SET_EXTERNAL_TASK_RETRIESNo-
CREATE_BATCH_UPDATE_PROCESS_INSTANCES _SUSPENDNo-
CREATE_BATCH_SET_VARIABLESNo-
ALLYesCREATE, READ, UPDATE, CREATE_BATCH_OPERATION_CANCEL_PROCESS_INSTANCE, CREATE_BATCH_OPERATION_DELETE_PROCESS_INSTANCE, CREATE_BATCH_OPERATION_MIGRATE_PROCESS_INSTANCE, CREATE_BATCH_OPERATION_MODIFY_PROCESS_INSTANCE, CREATE_BATCH_OPERATION_RESOLVE_INCIDENT, CREATE_BATCH_OPERATION_DELETE_DECISION_INSTANCE, CREATE_BATCH_OPERATION_DELETE_DECISION_DEFINITION, CREATE_BATCH_OPERATION_DELETE_PROCESS_DEFINITION,

Group Membership compatibility

The Group Membership resource type does not exist in Camunda 8, but its functionality is covered by the Group resource type in combination with the UPDATE permission. However, only the ALL permission from Camunda 7 is supported for migration, as individual CREATE and DELETE permissions would result in a more permissive authorization.

C7 PermissionMigration supportedC8 Resource Type equivalentC8 Permission equivalent
CREATENo--
DELETENo--
ALLYesGROUPUPDATE

Tenant Membership compatibility

Behaves the same as Group Membership.

C7 PermissionMigration supportedC8 Resource Type equivalentC8 Permission equivalent
CREATENo--
DELETENo--
ALLYesTENANTUPDATE

System compatibility

C7 PermissionMigration supportedC8 Permission equivalent
READYesREAD, READ_USAGE_METRIC
SETNo-
DELETENo-
ALLYesREAD, READ_USAGE_METRIC, UPDATE, READ_JOB_METRIC

Decision Definition compatibility

C7 PermissionMigration supportedC8 Permission equivalent
READYesREAD_DECISION_DEFINITION, READ_DECISION_INSTANCE
UPDATENo-
CREATE_INSTANCEYesCREATE_DECISION_INSTANCE
READ_HISTORYNo-
ALLYesCREATE_DECISION_INSTANCE, READ_DECISION_DEFINITION, READ_DECISION_INSTANCE, DELETE_DECISION_INSTANCE

Process Definition compatibility

C7 PermissionMigration supportedC8 Permission equivalent
READYesREAD_PROCESS_DEFINITION
UPDATENo-
DELETENo-
SUSPENDNo-
CREATE_INSTANCEYesCREATE_PROCESS_INSTANCE
READ_INSTANCEYesREAD_PROCESS_INSTANCE
UPDATE_INSTANCEYesUPDATE_PROCESS_INSTANCE
RETRY_JOBNo-
SUSPEND_INSTANCENo-
DELETE_INSTANCEYesDELETE_PROCESS_INSTANCE
MIGRATE_INSTANCENo-
READ_TASKYesREAD_USER_TASK
UPDATE_TASKYesUPDATE_USER_TASK
TASK_ASSIGNNo-
TASK_WORKNo-
READ_TASK_VARIABLENo-
READ_HISTORYNo-
READ_HISTORY_VARIABLENo-
DELETE_HISTORYNo-
READ_INSTANCE_VARIABLENo-
UPDATE_INSTANCE_VARIABLENo-
UPDATE_TASK_VARIABLENo-
UPDATE_HISTORYNo-
ALLYesCREATE_PROCESS_INSTANCE, READ_PROCESS_DEFINITION, READ_PROCESS_INSTANCE, READ_USER_TASK, UPDATE_PROCESS_INSTANCE, UPDATE_USER_TASK, MODIFY_PROCESS_INSTANCE, CANCEL_PROCESS_INSTANCE, DELETE_PROCESS_INSTANCE

ALL permissions compatibility

info

As illustrated in the tables above, the ALL permission in Camunda 7 maps to all the existing permissions in Camunda 8 for the given resource type, independently of whether these exist in Camunda 7 or not. This is true for all resource types.

Executing identity migration

# Run identity migration (experimental)
./start.sh --identity
warning

After migration has been completed, it is strongly recommended to verify the results in Camunda 8 before using the system in production.