欢迎访问 生活随笔!

生活随笔

当前位置: 首页 >

superset详解(四)--权限分类

发布时间:2024/1/1 56 豆豆
生活随笔 收集整理的这篇文章主要介绍了 superset详解(四)--权限分类 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

superset的权限基本上可以分为3类,菜单类,基本权限,资源类。superset在为角色添加权限的时候,添加的不是基本的权限而是权限和视图的组合。比如我想访问报表功能,视图是slicemodelview,权限是menu_access,需要把它们的组合 menu access on slicemodelview添加到我的角色当中。

菜单类

flaskappbuilder 自己定义的控制菜单的权限

menu_access
基本权限

基本权限有很多,类中的所有的加了@has_access| @has_access_api装饰器的方法都会生成基本权限

can_list can_add can_csv can_xlsx can_edit can_explore_json can_sql_jsonPERMISSION_PREFIX = 'can_' def has_access(f):if hasattr(f, '_permission_name'):permission_str = f._permission_nameelse:permission_str = f.__name__def wraps(self, *args, **kwargs):permission_str = PERMISSION_PREFIX + f._permission_name # 生成权限if self.appbuilder.sm.has_access(permission_str, self.__class__.__name__):return f(self, *args, **kwargs)else:passf._permission_name = permission_strreturn functools.update_wrapper(wraps, f)

权限有2部分组成,前缀’can_'和函数的名字

资源权限

flaskappbuilder 自己定义的控制菜单的权限

all_database_access # 所有的数据库权限 all_datasource_access # 所有的表的权限 database_access datasource_access schema_access metric_access

总结

以上是生活随笔为你收集整理的superset详解(四)--权限分类的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。