The permission control model of ByteHouse Cloud Data Warehouse Edition is primarily based on the RBAC permission control model. It enables fine-grained permission management for resources and data through roles. This document introduces the role management capabilities in ByteHouse, as well as how to create custom roles, grant, and revoke role permissions.
Terminology | Concepts |
|---|---|
Permissions | All actions that can be performed in ByteHouse are defined with corresponding permissions. For example: viewing account resource usage, creating new users, querying data from a table, or loading large datasets into ByteHouse. |
Roles | Permission control in ByteHouse is performed at the role level. Each ByteHouse user can be assigned one or more roles. |
For more information about ByteHouse's permission control logic and concepts, see Overview.
ByteHouse provides system default roles, and you can also create custom roles based on business requirements to flexibly manage role permissions.
Role types | Permission description |
|---|---|
System default roles |
|
Custom roles | Custom roles are created within ByteHouse cloud data warehouse and can be granted the necessary permissions for ByteHouse cloud data warehouse resources and data. |
Under the AccountAdmin role, you can click the "Permission Management - Roles" page in the top navigation to view all available roles in the account.
Only the primary account or sub-accounts with the AccountAdmin or SystemAdmin role and ByteHouse console access permissions can perform operations such as creating roles and granting role permissions in the ByteHouse console.
To meet complex business team organizational needs where built-in roles cannot satisfy permission control requirements, create suitable custom roles for each business team by clicking "Create Role" on the role management page according to the actual situation of your business teams.
After creating a custom role, you can go to the "Permission Management - Roles" page, click to enter the details page of the specific role, and grant resource permissions and data permissions to the role respectively.
Resource permission breakdown | Permission configuration description |
|---|---|
Create database | After turning on the switch, the role will have permissions to create databases and browse all databases. |
Create external catalog | After turning on the switch, the role will have permissions to create, delete, and view external catalogs. |
Data loading management | After enabling the switch, the role will have all functional permissions of the data import module, including creating, editing, and deleting import tasks, as well as creating, editing, and deleting data sources. |
Knowledge base management | After enabling the switch, the role will have permissions to create, view, and manage knowledge bases. |
Compute group management | By default, custom roles have VIEW permission for compute groups. You can configure whether the role has USE or ALL permissions for compute groups as needed, and you can also set whether the scope of compute groups controlled by the role is a specific compute group or all compute groups.
|
Global audit logs | After enabling the switch, the role will have permission to view global audit logs, including SQL history, running queries, permission audits, compute group audits, and user activities. Sub-users with this role can directly view all sub-users' global audit log information. |
Supports setting permission points for global, database, data table, view, materialized view, dictionary, external Catalog, and UDF.
Data permission granularity | Permission configuration instructions |
|---|---|
Global | Select the permission points to grant. After granting global permissions, all data objects in the environment will be granted the selected permission points. |
Database | Select the databases to authorize and grant database permission points. |
Data table | Select the databases and their data tables to authorize, and grant data table permission points. |
View | Select the databases and their views to authorize, and grant view permission points. |
Materialized view | Select the databases and their materialized views to authorize, and grant materialized view permission points. |
Dictionary | Select the databases and their dictionaries to authorize, and grant dictionary permission points. |
UDF | Select the UDF permission points to grant. |
External Catalog | Select the external Catalogs to authorize and grant the corresponding permission points. |
After completing the role permission settings, go to the role details page, click "Grant to User", select a user from the dropdown, and grant the role permissions to the specified user.
tip
Here, you can assign default or custom roles to the corresponding Volcano Engine IAM sub-users.
After granting, you can view which users have been granted the role in the Granted Users list of the role.
You can click the role name on the role management page to enter the role details page. On the "Granted users" tab, click the Revoke button to the right of the user and confirm to revoke the user's role assignment.