Fabric Commands - Required Permissions

The table below lists every Fabric command and the permission(s) needed to run it. For what each permission actually allows, see the List of Permissions in the Fabric Authorization overview article. For command syntax and usage examples, see Fabric Authorization Commands and Fabric Authorization List Commands.

#Fabric commandRequired permission
1ACTIVATEKEYACTIVATE_KEY
2ALTER USERself → no permissions required; other users → ALL
3ASSIGN ROLEASSIGN_ROLE / ALL
4ASSIGN SECURITY_PROFILEASSIGN_SECURITY_PROFILE
5BATCHBATCH on the target LU
6BATCH_DETAILSBATCH or BATCH_READ
7BATCH_EDITALL
8BATCH_IN_PROCESSBATCH or BATCH_READ
9BATCH_INFOBATCH or BATCH_READ
10BATCH_LISTBATCH or BATCH_READ
11BATCH_PAUSEBATCH
12BATCH_PROCESS_UNITnone
13BATCH_RETRYBATCH
14BATCH_SUMMARYBATCH or BATCH_READ
15BROADWAYBROADWAY
16CANCEL (also BATCH_CANCEL)BATCH
17CDC_REPUBLISH_INSTANCEALL
18CDC_REPUBLISH_SCHEMAALL
19CHECK_PERMISSIONALL
20CLUSTERIDALL
21CLUSTERSTATUSALL
22CQLREAD
23CREATE ROLEALL
24CREATE TOKENALL
25CREATE USERALL
26DEBUGALL
27DELETE INSTANCEDELETE_INSTANCE
28DELETE INSTANCES IF NOT EXISTALL
29DEPLOYDEPLOY, optional granularity - only on dedicated LUs
30DEPLOY ENVIRONMENTS FROM FILEDEPLOY_ENVIRONMENTS
31DESCRIBEREAD or READ_WITH_CLAIM
32DROP (ROLE / USER / TOKEN / LUTYPE)no single gate. Varies per DROP type, see breakdown below
33GETREAD, optional granularity - only on dedicated LUs/IID; ALL; BATCH if inside a batch process; READ_WITH_CLAIM with claims validation
34GETFsame as GET
35GRANTEDIT_ROLE (or ALL), plus per-resource granularity (a role with EDIT_ROLE scoped to one LU cannot grant/revoke permissions on a different LU)
36HELPnone
37JOBSTATUSALL
38KILLALL
39LISTno single gate. Varies per LIST type, see breakdown below
40MDB_EXPORTREAD
41MDB_IMPORTWRITE
42MDB_SIZEnone
43MEMORY_USAGEALL
44MIGRATEBATCH (delegates internally to BATCH)
45MIGRATE_DETAILSBATCH or BATCH_READ (delegates to BATCH_DETAILS)
46MIGRATE_IN_PROCESSBATCH or BATCH_READ (delegates to BATCH_IN_PROCESS)
47MIGRATE_LISTBATCH or BATCH_READ (delegates to BATCH_LIST)
48MIGRATE_RESUMEBATCH (delegates to BATCH_RETRY)
49MIGRATE_SUMMARYBATCH or BATCH_READ (delegates to BATCH_SUMMARY)
50PARSERSTATUSALL
51K2PROFILERALL
52PSALL
53REF_BACKUPALL
54REF_BACKUP_DELETEALL
55REF_BACKUP_DOWNLOADALL
56REF_CANCELALL
57REF_STATUSALL
58REF_SYNCALL
59REF_SYNC_WAITALL
60REKEY_ENCRYPTEDALL
61RELEASEnone
62RESTARTJOBALL
63RESTARTPARSERALL
64RESUMEJOBALL
65REVOKEEDIT_ROLE (or ALL), plus per-resource granularity (a role with EDIT_ROLE scoped to one LU cannot grant/revoke permissions on a different LU)
66REVOKE ROLEREVOKE_ROLE
67REVOKE SECURITY_PROFILEREVOKE_SECURITY_PROFILE
68SEARCHREAD
69SETno single gate. Varies per option, see breakdown below
70SET_GLOBAL SET_GLOBAL_GLOBAL - to set a GLOBAL or AFFINITY_RULES value cluster-wide.
SET_GLOBAL_ENVIRONMENT - to set the cluster's active environment.
SET_GLOBAL_CONFIG_OVERRIDES - to apply config overrides (CONFIG_OVERRIDES / _ADD / _REMOVE / _VERSION) cluster-wide.
71SHOW_DELTAREAD, optional granularity - only on dedicated LUs
72STARTJOBALL
73STARTPARSERALL
74STOPJOBALL
75STOPPARSERALL
76STREAM_SYNCALL
77SYNC_INSTANCEnone
78TEST_CONNECTIONALL
79TIMEnone
80TRACEALL
81UPDATEJOBALL
82VERSIONALL

LIST per-type breakdown

LIST has no single gate. Permission enforcement is done per LIST type:

LIST typeRequired permission
WSLIST_SETTINGS
DB_SOURCESLIST_SETTINGS
INTERFACESLIST_SETTINGS
LU_TYPESLIST_SETTINGS
LUTLIST_SETTINGS
ENVIRONMENTSLIST_SETTINGS
ENVSLIST_SETTINGS
INSTANCE_GROUPSLIST_SETTINGS
IGSLIST_SETTINGS
BROADWAY_FLOWSLIST_SETTINGS
BFLIST_SETTINGS
SECURITY_PROFILESLIST_SETTINGS
REF_BACKUPSLIST_SETTINGS
MTABLELIST_SETTINGS
INSTANCESREAD. Can be with granularity of per-LU read
CONFIGREAD_CONFIG
CONFIG_OVERRIDESREAD_CONFIG
CONFIG_OVERRIDES_HISTORYREAD_CONFIG
AFFINITY_RULESREAD_CONFIG
ROLESALL
USERSALL
TOKENSALL
ROLE_PERMISSIONSALL
METHODSALL

DROP per-type breakdown

DROP has no single gate. Permission enforcement is done per each DROP type:

DROP <type>Required permission
ROLEALL
USERALL
TOKENALL
LUTYPEDROP_LUTYPE, optional granularity per LU

SET per-option breakdown

SET has no single gate for most options. It has two shapes: setting a global/LU-scoped variable by name and setting a session with a specific task.

SET <option/task>Required permission
SYNCnone
INSTANCE_TTLnone
ENVIRONMENTSET_ENVIRONMENT OR SET_GLOBAL_ENVIRONMENT
DB_PROXY (i.e. SET DB_INTERFACE_PROXY)DB_INTERFACE_PROXY
SYSTEM_DB_PROXYSYSTEM_DB_PROXY
CLUSTER_DISTRIBUTE_AFFINITYany permission except ALL_WS
OUTPUTALL
LOG_ID, ASYNC_TRX, COMMON_LOCAL_TRX, FROM, CDC_PUBLISH, NODE_AFFINITY, and all other optionsnone
SET <name>=<value>none (a global/LU variable, not a session Option)
SET (no args — show all)none for session values; SET_READ to also see globals
PROJECT_NAME, USERNAME, USER_ROLES, SCOPE, DEFAULT, IS_STUDIOnone (Read-only/unchangeable)

Previous

Fabric Commands - Required Permissions

The table below lists every Fabric command and the permission(s) needed to run it. For what each permission actually allows, see the List of Permissions in the Fabric Authorization overview article. For command syntax and usage examples, see Fabric Authorization Commands and Fabric Authorization List Commands.

#Fabric commandRequired permission
1ACTIVATEKEYACTIVATE_KEY
2ALTER USERself → no permissions required; other users → ALL
3ASSIGN ROLEASSIGN_ROLE / ALL
4ASSIGN SECURITY_PROFILEASSIGN_SECURITY_PROFILE
5BATCHBATCH on the target LU
6BATCH_DETAILSBATCH or BATCH_READ
7BATCH_EDITALL
8BATCH_IN_PROCESSBATCH or BATCH_READ
9BATCH_INFOBATCH or BATCH_READ
10BATCH_LISTBATCH or BATCH_READ
11BATCH_PAUSEBATCH
12BATCH_PROCESS_UNITnone
13BATCH_RETRYBATCH
14BATCH_SUMMARYBATCH or BATCH_READ
15BROADWAYBROADWAY
16CANCEL (also BATCH_CANCEL)BATCH
17CDC_REPUBLISH_INSTANCEALL
18CDC_REPUBLISH_SCHEMAALL
19CHECK_PERMISSIONALL
20CLUSTERIDALL
21CLUSTERSTATUSALL
22CQLREAD
23CREATE ROLEALL
24CREATE TOKENALL
25CREATE USERALL
26DEBUGALL
27DELETE INSTANCEDELETE_INSTANCE
28DELETE INSTANCES IF NOT EXISTALL
29DEPLOYDEPLOY, optional granularity - only on dedicated LUs
30DEPLOY ENVIRONMENTS FROM FILEDEPLOY_ENVIRONMENTS
31DESCRIBEREAD or READ_WITH_CLAIM
32DROP (ROLE / USER / TOKEN / LUTYPE)no single gate. Varies per DROP type, see breakdown below
33GETREAD, optional granularity - only on dedicated LUs/IID; ALL; BATCH if inside a batch process; READ_WITH_CLAIM with claims validation
34GETFsame as GET
35GRANTEDIT_ROLE (or ALL), plus per-resource granularity (a role with EDIT_ROLE scoped to one LU cannot grant/revoke permissions on a different LU)
36HELPnone
37JOBSTATUSALL
38KILLALL
39LISTno single gate. Varies per LIST type, see breakdown below
40MDB_EXPORTREAD
41MDB_IMPORTWRITE
42MDB_SIZEnone
43MEMORY_USAGEALL
44MIGRATEBATCH (delegates internally to BATCH)
45MIGRATE_DETAILSBATCH or BATCH_READ (delegates to BATCH_DETAILS)
46MIGRATE_IN_PROCESSBATCH or BATCH_READ (delegates to BATCH_IN_PROCESS)
47MIGRATE_LISTBATCH or BATCH_READ (delegates to BATCH_LIST)
48MIGRATE_RESUMEBATCH (delegates to BATCH_RETRY)
49MIGRATE_SUMMARYBATCH or BATCH_READ (delegates to BATCH_SUMMARY)
50PARSERSTATUSALL
51K2PROFILERALL
52PSALL
53REF_BACKUPALL
54REF_BACKUP_DELETEALL
55REF_BACKUP_DOWNLOADALL
56REF_CANCELALL
57REF_STATUSALL
58REF_SYNCALL
59REF_SYNC_WAITALL
60REKEY_ENCRYPTEDALL
61RELEASEnone
62RESTARTJOBALL
63RESTARTPARSERALL
64RESUMEJOBALL
65REVOKEEDIT_ROLE (or ALL), plus per-resource granularity (a role with EDIT_ROLE scoped to one LU cannot grant/revoke permissions on a different LU)
66REVOKE ROLEREVOKE_ROLE
67REVOKE SECURITY_PROFILEREVOKE_SECURITY_PROFILE
68SEARCHREAD
69SETno single gate. Varies per option, see breakdown below
70SET_GLOBAL SET_GLOBAL_GLOBAL - to set a GLOBAL or AFFINITY_RULES value cluster-wide.
SET_GLOBAL_ENVIRONMENT - to set the cluster's active environment.
SET_GLOBAL_CONFIG_OVERRIDES - to apply config overrides (CONFIG_OVERRIDES / _ADD / _REMOVE / _VERSION) cluster-wide.
71SHOW_DELTAREAD, optional granularity - only on dedicated LUs
72STARTJOBALL
73STARTPARSERALL
74STOPJOBALL
75STOPPARSERALL
76STREAM_SYNCALL
77SYNC_INSTANCEnone
78TEST_CONNECTIONALL
79TIMEnone
80TRACEALL
81UPDATEJOBALL
82VERSIONALL

LIST per-type breakdown

LIST has no single gate. Permission enforcement is done per LIST type:

LIST typeRequired permission
WSLIST_SETTINGS
DB_SOURCESLIST_SETTINGS
INTERFACESLIST_SETTINGS
LU_TYPESLIST_SETTINGS
LUTLIST_SETTINGS
ENVIRONMENTSLIST_SETTINGS
ENVSLIST_SETTINGS
INSTANCE_GROUPSLIST_SETTINGS
IGSLIST_SETTINGS
BROADWAY_FLOWSLIST_SETTINGS
BFLIST_SETTINGS
SECURITY_PROFILESLIST_SETTINGS
REF_BACKUPSLIST_SETTINGS
MTABLELIST_SETTINGS
INSTANCESREAD. Can be with granularity of per-LU read
CONFIGREAD_CONFIG
CONFIG_OVERRIDESREAD_CONFIG
CONFIG_OVERRIDES_HISTORYREAD_CONFIG
AFFINITY_RULESREAD_CONFIG
ROLESALL
USERSALL
TOKENSALL
ROLE_PERMISSIONSALL
METHODSALL

DROP per-type breakdown

DROP has no single gate. Permission enforcement is done per each DROP type:

DROP <type>Required permission
ROLEALL
USERALL
TOKENALL
LUTYPEDROP_LUTYPE, optional granularity per LU

SET per-option breakdown

SET has no single gate for most options. It has two shapes: setting a global/LU-scoped variable by name and setting a session with a specific task.

SET <option/task>Required permission
SYNCnone
INSTANCE_TTLnone
ENVIRONMENTSET_ENVIRONMENT OR SET_GLOBAL_ENVIRONMENT
DB_PROXY (i.e. SET DB_INTERFACE_PROXY)DB_INTERFACE_PROXY
SYSTEM_DB_PROXYSYSTEM_DB_PROXY
CLUSTER_DISTRIBUTE_AFFINITYany permission except ALL_WS
OUTPUTALL
LOG_ID, ASYNC_TRX, COMMON_LOCAL_TRX, FROM, CDC_PUBLISH, NODE_AFFINITY, and all other optionsnone
SET <name>=<value>none (a global/LU variable, not a session Option)
SET (no args — show all)none for session values; SET_READ to also see globals
PROJECT_NAME, USERNAME, USER_ROLES, SCOPE, DEFAULT, IS_STUDIOnone (Read-only/unchangeable)

Previous