W3Cschool
恭喜您成為首批注冊用戶
獲得88經驗值獎勵
安全管理對數(shù)據(jù)庫至關重要,OceanBase 有專門的安全管理策略用來保證數(shù)據(jù)庫數(shù)據(jù)安全和資源安全。OceanBase 數(shù)據(jù)庫的安全管理策略主要包括資源隔離和權限控制:通過資源隔離限制可以訪問到的數(shù)據(jù),隔離保證資源安全;對于共享數(shù)據(jù),通過權限設置訪問權限,從而保證數(shù)據(jù)安全。
您可在 RAM 訪問控制中,設置用戶權限。
登錄 RAM 訪問控制臺后,單擊左側導航欄的 權限策略管理,單擊 創(chuàng)建權限策略。
在 新建自定義權限策略 頁面,填寫 策略名稱,選擇 腳本配置,為子賬號創(chuàng)建權限策略。
創(chuàng)建完成后,單擊左側導航欄 用戶,搜索需要增加權限的用戶名稱。
進入用戶詳情頁面后,單擊 權限管理。
在 個人權限 頁簽下,單擊 添加權限。
在右側彈出框中,單擊 自定義策略,選擇剛剛創(chuàng)建的權限策略,單擊 確定。
系統(tǒng)租戶和普通租戶
OceanBase 支持多租戶架構,租戶是數(shù)據(jù)庫對象管理和資源管理的基礎,即租戶即是各類數(shù)據(jù)庫對象的容器,又是資源(CPU、Memory、IO 等)的容器。
多租戶架構優(yōu)勢如下:
在數(shù)據(jù)安全方面,不允許跨租戶的數(shù)據(jù)訪問,確保用戶的數(shù)據(jù)資產沒有泄露的風險。
在資源使用方面,租戶獨占其資源配額。通過多租戶架構,將數(shù)據(jù)和資源分離,這樣就保證了數(shù)據(jù)資源在不同租戶之間的安全性。
OceanBase 系統(tǒng)中包含兩大類租戶:系統(tǒng)租戶和普通租戶。系統(tǒng)租戶是系統(tǒng)內置的,用于保存 OceanBase 正常運行的一些資源,進行集群管理操作和存儲系統(tǒng)表。只有系統(tǒng)租戶下的 root 用戶能夠增加和刪除普通租戶,修改系統(tǒng)配置項和進行每日合并等一些重要功能操作。
租戶管理
在 OceanBase 中,不同租戶之間的數(shù)據(jù)對象是完全隔離的,對象名字空間的最頂層就是租戶。OceanBase 的租戶權限管理有如下特點:
任何租戶(不論是系統(tǒng)租戶還是普通租戶)下的用戶不能跨租戶訪問其他普通租戶下的用戶數(shù)據(jù)。
不支持跨租戶對用戶進行授權。例如:A 租戶下的管理員用戶 u1,不能將 A 租戶下的表 t1 的讀寫權限授予 B 租戶下的任何用戶。
只有系統(tǒng)租戶下的管理員用戶才有集群管理權限,執(zhí)行系統(tǒng)管理操作,如創(chuàng)建/刪除普通租戶、設置系統(tǒng)配置參數(shù)、開啟每日合并操作。
普通租戶下的用戶及權限和 MySQL 實例類似,既有具備租戶內管理員權限的特權用戶,也有普通用戶。權限的授予及回收也和單個 MySQL 實例相同。
在跨租戶數(shù)據(jù)訪問方面有一個小小的例外,那就是普通租戶下的用戶,如果他具備訪問系統(tǒng)視圖的權限,實際上他是可以訪問到系統(tǒng)租戶下的系統(tǒng)表數(shù)據(jù)的,因為所有元信息都存放在系統(tǒng)租戶下的系統(tǒng)表里。
數(shù)據(jù)庫用戶權限管理包括新建用戶、刪除用戶、修改密碼、修改用戶名、鎖定用戶、用戶授權和撤銷授權等。OceanBase 中用戶分為兩類:系統(tǒng)租戶下的用戶,一般租戶下的用戶。創(chuàng)建用戶時,如果 Session 當前租戶為系統(tǒng)租戶,則新建的用戶為系統(tǒng)租戶用戶;反之為一般租戶下的用戶。
用戶名稱在租戶內是唯一的,不同租戶下的用戶可以同名。用戶名@租戶名
在系統(tǒng)全局唯一。為區(qū)別系統(tǒng)租戶和一般租戶下的用戶,建議對系統(tǒng)租戶下的用戶名稱使用特定前綴。系統(tǒng)租戶和普通租戶都有一個內置用戶 root,系統(tǒng)租戶的 root 為系統(tǒng)管理員,普通租戶的 root 為租戶管理員。
一般租戶下的用戶只能擁有該租戶下對象的訪問權限,權限設計和 MySQL 兼容;系統(tǒng)租戶下的用戶可以被授予跨租戶的對象訪問權限。當前系統(tǒng)租戶下的用戶不允許訪問一般租戶下的用戶表數(shù)據(jù)。
用戶在登錄 OceanBase 系統(tǒng)時需指定唯一的租戶名。對于系統(tǒng)租戶下的用戶,在登錄后,可以切換當前訪問的租戶;對于一般租戶下的用戶,不能切換到其他租戶。 對于權限,可以分成以下幾個層級:
全局層級:適用于所有的數(shù)據(jù)庫。使用 GRANT ALL ON *.* 授予全局權限。
數(shù)據(jù)庫層級:適用于一個給定數(shù)據(jù)庫中的所有目標。使用 GRANT ALL ON db_name.* 授予數(shù)據(jù)庫權限。
表層級:表權限適用于一個給定表中的所有列。使用 GRANT ALL ON db_name.tbl_name 授予表權限。
權限信息如下:
權限 |
說明 |
---|---|
ALL PRIVILEGES |
除 GRANT OPTION 以外所有權限 |
ALTER |
ALTER TABLE 的權限 |
CREATE |
CREATE TABLE 的權限 |
CREATE USER |
CREATE USER,DROP USER,RENAME USER 和 REVOKE ALL PRIVILEGES 的權限 |
CREATE TABLEGROUP |
全局 CREATE TABLEGROUP 的權限 |
DELETE |
DELETE 的權限 |
DROP |
DROP 的權限 |
GRANT OPTION |
GRANT OPTION 的權限 |
INSERT |
INSERT 的權限 |
SELECT |
SELECT 的權限 |
UPDATE |
UPDATE 的權限 |
SUPER |
SET GLOBAL 修改全局系統(tǒng)參數(shù)的權限 |
SHOW DATABASES |
全局 SHOW DATABASES 的權限 |
INDEX |
CREATE INDEX, DROP INDEX 的權限 |
CREATE VIEW |
創(chuàng)建、刪除視圖的權限 |
SHOW VIEW |
SHOW CREATE VIEW 權限 |
OceanBase 中,每個租戶對應一個 MySQL 實例,OceanBase 的用戶權限管理做到了和 MySQL 的兼容,操作和 MySQL 都是一樣的。在用戶的基礎上,OceanBase 增加了多租戶機制,因此也引入了租戶權限管理,規(guī)定了不同租戶之間數(shù)據(jù)和資源的使用權限。通過租戶權限管理和用戶權限管理保證了 OceanBase 的安全。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: