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。
-
在左側導覽列,單擊賬號管理。
-
單擊目標帳號操作列中的權限,並選擇編輯權限。
-
選擇授權層級,並勾選權限配置。
-
單擊
表徵圖,並單擊確定後,完成授權。