AnalyticDB for MySQL支持针对不同的权限粒度授予不同的权限达到权限控制的目的。本文为您介绍SQL操作与权限的关系及如何查看、编辑权限的操作。
权限粒度
AnalyticDB for MySQL集群支持以下四个粒度的权限控制:
GLOBAL:集群级别。
DB:数据库级别。
TABLE:表级别。
COLUMN:列(字段)级别 。
如果您希望某个用户只查询某一张表的某一列数据,可以将该列的SELECT权限授予该用户,例如
GRANT select (customer_id) ON customer TO 'test321'
。
操作和权限关系
操作 | 需要的权限 | 权限支持的粒度 |
SELECT | SELECT |
|
INSERT | INSERT |
|
INSERT…SELECT…FROM… |
|
|
UPDATE | UPDATE |
|
DELETE | DELETE |
|
TRUNCATE TABLE | DROP |
|
ALTER TABLE |
|
|
CREATE DATABASE | CREATE | GLOBAL |
CREATE TABLE | CREATE |
|
SHOW CREATE TABLE | SELECT |
|
DROP DATABASE | DROP |
|
DROP TABLE | DROP |
|
CREATE VIEW |
|
|
DROP VIEW | DROP |
|
SHOW CREATE VIEW |
|
|
CREATE USER/DROP USER/RENAME USER | CREATE_USER | GLOBAL |
SET PASSWORD | SUPER | GLOBAL |
GRANT/REVOKE | GRANT | GLOBAL |
查看权限
SQL查看权限
和企业版、基础版及湖仓版集群均可以SQL查看权限。
操作步骤
执行SHOW GRANTS语句,查看用户权限。详情请参见SHOW GRANTS。
DMS查看权限
和企业版、基础版及湖仓版集群均可以通过DMS查看权限。
前提条件
阿里云账号可直接查看权限。
RAM用户需要拥有AliyunADBReadOnlyAccess权限才能查看权限。如何为RAM用户授权,请参见为RAM用户授权。
操作步骤
使用DMS连接AnalyticDB for MySQL集群。详情请参见使用DMS连接AnalyticDB for MySQL。
在DMS左侧的已登录实例列表中,右键单击目标实例。
从弹出的列表中选择数据库账号管理。
在账号管理页面,查看用户权限。
AnalyticDB for MySQL控制台查看权限
仅企业版、基础版及湖仓版集群可以通过AnalyticDB for MySQL控制台查看权限。
前提条件
阿里云账号可直接查看权限。
RAM用户需要拥有AliyunADBReadOnlyAccess权限才能查看权限。如何为RAM用户授权,请参见为RAM用户授权。
操作步骤
- 登录云原生数据仓库AnalyticDB MySQL控制台。
- 在页面左上角,选择集群所在地域。
- 在左侧导航栏,单击集群列表。
在湖仓版页签下,单击目标集群ID。
在左侧导航栏,单击账号管理。
单击目标账号操作列中的权限,并选择查看权限。
根据需求选择授权层级,可查看全局、数据库、数据表和数据列的权限信息。
编辑权限
SQL授权
和企业版、基础版及湖仓版集群均可以通过SQL语句进行授权操作。
前提条件
用户需要拥有GRANT OPTION权限,才能通过SQL进行授权操作。
操作步骤
执行GRANT语句,为用户授权。详情请参见GRANT。
DMS授权
和企业版、基础版及湖仓版集群均可以通过DMS进行授权操作。
前提条件
阿里云账号可直接进行授权操作。
RAM用户需要拥有AliyunADBFullAccess和AliyunServiceRoleForDMS权限才能进行授权操作。如何为RAM用户授权,请参见为RAM用户授权。
操作步骤
使用DMS连接AnalyticDB for MySQL集群。详情请参见使用DMS连接AnalyticDB for MySQL。
在DMS左侧的已登录实例列表中,右键单击目标实例。
从弹出的列表中选择数据库账号管理。
在账号管理页面,单击目标账号操作列的编辑。
在编辑用户页面,选择全局权限。
在权限类型列表中,勾选或去勾选需要的权限。
AnalyticDB for MySQL控制台授权
仅企业版、基础版及湖仓版集群支持通过AnalyticDB for MySQL控制台进行授权操作。
前提条件
阿里云账号可直接进行授权操作。
RAM用户需要拥有AliyunADBFullAccess权限,且绑定的数据库账号拥有GRANT OPTION权限,才能进行授权操作。
操作步骤
- 登录云原生数据仓库AnalyticDB MySQL控制台。
- 在页面左上角,选择集群所在地域。
- 在左侧导航栏,单击集群列表。
在湖仓版页签下,单击目标集群ID。
在左侧导航栏,单击账号管理。
单击目标账号操作列中的权限,并选择编辑权限。
选择授权层级,并勾选权限配置。
单击图标,并单击确定后,完成授权。