This functionality is for Dremio v16.0+ Enterprise Edition only.
The following table shows all privileges currently supported by Dremio’s access control functionality.
Granting or Revoking Privileges
By default, all users have all privileges granted to them for any objects without applicable permissions. Once a specific user has been granted access to an object, access is then restricted to only users granted access. All other users no longer have access.
The manual granting of privileges is accomplished either from the SQL Editor,REST APIs, or the Privileges screen. The SQL Editor is accessible from any dataset and any commands entered here will apply to the scope supplied with the command itself.
To access the role-based access control from Dremio’s interface:
- Navigate to the desired object (folder, dataset, source, etc.).
- Click the Down arrow next to the ellipses (…) button near the top-right corner of the screen.
- Click the Settings option.
- Select the Privileges tab. This is where all privileges may be manually assigned to users and groups for an object.
- Click the Specific users… button and add or remove privileges as desired.
- When finished, click Save to preserve your changes.
If a user has been granted a specific privilege for an object by more than one group and that privilege is revoked for one group, the user will retain that privilege until it is revoked by all groups associated with the same object(s).
All Supported Privileges
|ALTER||System, Space, Source, Folder, Table, View||Add, delete, or modify table or view definitions, columns, or settings of all datasets in scope. For tables, this includes managing metadata, such as Metadata Refresh and Forget.|
|ALTER_REFLECTION||System, Source, Space, Folder||Create, edit, and view reflections on all datasets in scope. Includes granting access to all interfaces, such as the Dataset Reflection pages, Administrator Reflection pages, and any REST API endpoints.|
|CREATE_TABLE||System, Source, Folder||Create a table using |
|DROP||Project, Source, Folder||Drop tables on any dataset in the scope.|
|MANAGE_GRANTS||System, Source, Space, System Table, Folder, Table, View||Modifies the privileges of all objects in the set scope. Also changes the owner of all objects within the scope.|
|SELECT||Source, Space, System Table, Folder, View, Table||Gives the ability to execute |
|VIEW_REFLECTIONS||System, Source, Space, Folder||View Reflections on all datasets in the scope. Includes access to all Dremio interfaces, such as the Dataset Reflection pages, Administrator Reflection pages, and any REST API endpoints.|
Source & Spaces
|CREATE_ROLE||System||Create new roles but does not include access to editing the admin role memberships.|
|CREATE_SOURCE||System||Create new sources.|
|CREATE_USER||System||Create new users. Assigning roles to the new users also requires the |
|EXTERNAL_QUERY||System, Source||Run the external_query table function on the source.|
|MODIFY||System, Source, Space||Edit and delete an object. The following conditions apply:|
|ROLE ADMIN||System||Grant full admin access to users associated with a specified role. This may only be assigned with the GRANT SQL command.|
|UPLOAD||System||Upload files to the homespace.|
|VIEW JOB HISTORY||System||Give the ability to view all job history.|