superset詳解 四 許可權分類

2021-09-11 15:30:53 字數 1041 閱讀 2205

superset的許可權基本上可以分為3類,選單類,基本許可權,資源類。superset在為角色新增許可權的時候,新增的不是基本的許可權而是許可權和檢視的組合。比如我想訪問報表功能,檢視是slicemodelview,許可權是menu_access,需要把它們的組合 menu access on slicemodelview新增到我的角色當中。

選單類

menu_access
基本許可權

基本許可權有很多,類中的所有的加了@has_access| @has_access_api裝飾器的方法都會生成基本許可權

can_list can_add  can_csv   can_xlsx  can_edit    can_explore_json   can_sql_json

permission_prefix = 'can_'

def has_access(f):

if hasattr(f, '_permission_name'):

permission_str = f._permission_name

else:

permission_str = f.__name__

def wraps(self, *args, **kwargs):

permission_str = permission_prefix + f._permission_name # 生成許可權

return f(self, *args, **kwargs)

else:

pass

f._permission_name = permission_str

許可權有2部分組成,字首』can_'和函式的名字

資源許可權

all_database_access      # 所有的資料庫許可權

all_datasource_access # 所有的表的許可權

database_access

datasource_access

schema_access

metric_access

許可權管理系統(四) RBAC許可權模型分類介紹

rbac是role basedaccess control的英文縮寫,意思是基於角色的訪問控制。rbac認為許可權授權實際上是who what how的問題。在rbac模型中,who what how構成了訪問許可權三元組,也就是 who對what which 進行how的操作,也就是 主體 對 客...

Android許可權分類

正常許可權 直接在 androidmanifest.xml中新增後,不需要提醒使用者access location extra commands access network state access notification policy access wifi state bluetooth b...

Android許可權分類

正常許可權 直接在 androidmanifest.xml中新增後,不需要提醒使用者access location extra commands access network state access notification policy access wifi state bluetooth b...