赞
踩
databaseasync/api/read?_flt_0_expose_in_sqllab=1&_oc_DatabaseAsync=database_name&_od_DatabaseAsync=asc
这里没有权限控制,如果你有进入sql编辑器的权限,就可以获取平台上所有的数据源
superset/schemas/database_id/ # database_id 数据库的id
这里有权限控制,有三个权限all_database_access(所有的数据库权限), schema_access (某一个数据库的权限), all_datasource_access(访问所有的表的权限)。
1.如果你有all_database_access或者all_datasource_access,那就返回当前数据源下的所有的数据库
2. 如果没有1,如果你有schema_access,那么返回你有权限的那个数据库
3. 如果没有1和2,那么会根据你的datasource_access来确定你有权限的表,然后获取到表所属的数据库 3.如果没有1和2,那么会根据你的datasource_access来确定你有权限的表,然后获取到表所属的数据库
superset/tables/db_id/schema_name/undefined/
这里的权限控制和获取schema的权限类似:
1.判断是否有当前database的权限或者有all_datasource_access的权限
2.判断是否有获取当前schema的权限
3.获取用户所有有权限的表,如果表的shema字段不为空,则过滤出schema等于当前shema的表,如果schema为空则返回所有的表
superset/table/db_id/table_name/schema_name/ #获取表的基本信息
superset/extra_table_metadata/<database_id>/<table_name>/<schema>/ #获取额外的信息
获取表的字段,主键,外键,索引
superset/sql_json
查询sql的时候,有2中,异步和同步。用celery来执行异步任务。默认查询100000条,但是页面只展示1000条记录
savedqueryviewapi/api/create
在表saved_query中保存了一条查询记录
kv/store/
参数:data: {"dbId":3,"title":"未命名的查询 3","schema":"bi","autorun":false,"sql":"SELECT * from bi_marketing_daily_new_salerecord limit 100;"}
返回值:返回的是记录的ID
把查询信息保存到表keyvalue中,然后把ID返回给前端
可视化和报表的功能类似,只不过这里如果是普通用户的话,因为没有新建的表的权限,所以不能进入到可视化界面,需要admin账户把表的权限给普通用户才可以。
superset/csv/<client_id>
要把权限 can csv on superset 添加到普通用户的角色上才可以下载,如果没有下载权限,会跳转到welcome页面
supersetext/xlsx/<client_id>
要把权限 can xlsx on supersetext 添加到普通用户的角色上才可以下载,如果没有下载权限,会跳转到welcome页面
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。