華為云 GaussDB(for Redis)持續完善企業級增強特性,是名副其實的"Redis Plus",其中很經典的企業級特性是多租戶能力,支持添加只讀賬號、讀寫賬號,且具備強大的 DB 級鑒權能力,即可約束每個賬號可訪問的數據庫(DB)范圍,避免誤操作其他租戶數據。該特性可以幫助企業在共享 Redis 實例的情況下,保護不同租戶的數據安全,為企業的開發和管理提供便利。
哪些用戶需要使用多租戶功能?
多租戶是數據庫用戶剛需的一個功能。例如,企業中有兩個業務部門 A 和 B,他們都需要使用 Redis 來存儲自己的數據,如果不使用多租戶權限功能,那么 A 和 B 的數據就會混在一起,這樣就會存在數據泄露和誤操作的風險。一旦使用了多租戶管理功能,就可以將 A 和 B 的數據分別存儲在不同的 Redis 實例/DB 中,并且對這些實例/DB 進行權限控制,從而保障數據的安全性和可靠性。
在數據庫領域,多租戶技術往往有以下一些標準屬性:比如讀寫權限控制、跨 DB 鑒權隔離等等;而 GaussDB(for Redis)就是具備完善的多租戶管理技術的一個典范,實現了讀寫權限控制和數據庫(DB)隔離這兩大特性的完美融合。
為什么選擇 GaussDB(for Redis)
租戶管理功能?
關于權限控制,開源 Redis 雖然在 6.0 新版本有 ACL,但只能設置為只讀、讀寫,每個賬號還是可以看到所有的 DB 的。這個設計比較雞肋,跟數據庫多租戶的原理背道而馳。舉個例子,業務開發小王應該用 DB1,但有天忘記 SELECT,不小心清庫了小張的 DB0,導致生產事故。而 GaussDB(for Redis)的權限隔離就從根源上解決了這個問題,如小王被設置為只有 DB1 的權限而沒有 DB0 的權限,那么即使他誤操作也不會對 DB0 的數據產生影響。
此外,開源 Redis 的多租戶功能只有單機才可以使用,一旦業務上量需要集群,多 DB 功能反而就不可用了,只剩一個 DB0;GaussDB(for Redis)基于自身天然的集群架構做了多 DB 增強,支持 6w+DB,同時可創建 200+個 ACL 子賬號,滿足多種業務場景的需要。
開源 Redis 6.0 和 GaussDB(for Redis)所具備的權限管理能力比較
功能很全面,具體怎么使用?
GaussDB(for Redis)的租戶管理功能需要用戶在控制臺的賬號管理頁面建立賬號,并為每個賬號設置 DB 的只讀/讀寫權限,操作非常直觀方便。例如,下圖創建了賬號 test123,具備讀寫權限,且只能訪問 DB1、DB2。
賬號建立好之后,用戶可以直接在程序中使用“user:pwd”組合字串作為密碼參數,并配置目標 DB 號,即可使用業務專屬 DB。
下面以一個形象的例子來說明如何通過多租戶管理功能來實現賬戶間的權限隔離。蜀國技術總監諸葛孔明需要為蜀國的用戶和合作伙伴吳國的用戶設計不同的 DB 權限,從而達到公有信息共享和機密信息保護這兩個目的。
首先,他為劉備設置了所有 DB 的讀寫權限;為大將關羽和張飛設置了“桃園結義”DB0 和“華容道”DB1 和的讀寫權限,然后為秘書趙云設置了“長坂坡”DB2 的讀寫權限和其余 DB(除“桃園結義”DB0)的只讀權限。至于吳國的合作伙伴,周瑜和黃蓋被授予了“赤壁之戰”DB3 的讀寫權限,而他們的主公孫權則被設置了“赤壁之戰”DB3 的只讀權限。
聽上去是不是很復雜很難操作?其實 GaussDB(for Redis)的賬號管理頁面設計得很靈活直觀,孔明可以通過點擊“授權所有數據庫”為劉備授權,又可以選擇一個或者多個 DB 為關羽張飛授權,還能選擇“未授權數據庫”為趙云免除“桃園結義”DB 的只讀權限,非常方便設置和后期管理。
本文詳細介紹了 GaussDB(for Redis)全面的多租戶管理特性,并以幾個生動的例子為例,闡明了開源 Redis 賬號管理能力的不足,以及 GaussDB(for Redis)是如何解決這些不足的。在當前的大數據時代,GaussDB(for Redis)的企業級特性完美彌補了開源 Redis 的短板,為企業的數據安全保駕護航。
審核編輯 黃宇
-
開源
+關注
關注
3文章
3247瀏覽量
42402 -
Redis
+關注
關注
0文章
371瀏覽量
10846 -
華為云
+關注
關注
3文章
2423瀏覽量
17311
發布評論請先 登錄
相關推薦
評論