本文為您介紹基於即時數倉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 |
|