本文為您介紹基于實時數倉Hologres的簡單權限模型。
背景
Hologres兼容Postgres,使用與Postgres完全一致的權限系統(簡稱專家模式,詳情請參見專家權限模型)。典型的Postgres權限系統劃分非常嚴格,在實際業務場景中使用時,操作較為復雜,通常存在如下痛點:
如果您想要給某個用戶授權,需要執行大量的授權語句。
不同的角色有不同的權限,在操作上非常繁瑣,有時也會出現某條授權語句遺漏導致某個權限缺失的情況。
每新增一個用戶就需要執行相同的批量授權語句,浪費大量時間。
盡管我們提供了Postgres的標準授權語句作為參考,但當使用習慣不同時,面對不同的權限,常常難以準確執行正確的授權語句,在權限管理方面容易混亂。這在一定程度上也會給業務帶來安全風險,同時也加大了您的管理成本、時間成本和使用成本。
為解決以上業務痛點,Hologres在PostgreSQL權限的基礎上,提供了一種粗粒度的簡單權限模型(Simple Permission Model,SPM)。簡單權限模型以DB作為維度,劃分admin(管理員)、developer(開發者)、writer(讀寫者)以及viewer(分析師)四種角色,您可以通過少量的權限管理函數,即可對DB中的對象進行方便且安全的權限管理。
簡單權限模型介紹
在簡單權限模型中,每個DB有如下幾種權限等級:
DB管理員:{db}_admin
開發者:{db}_developer
讀寫者:{db}_writer
分析師:{db}_viewer
每個角色對應的權限如下表所示。
角色 | 權限 |
{db}_admin |
|
{db}_developer |
|
{db}_writer |
|
{db}_viewer |
|