longlong 发表于 2018-11-2 11:40:18

行数据权限bug

需求:实现只能看到自己创建的数据这样的数据权限
问题:按照文档镜像了设置权限。发现未能成功数据隔离
代码:
步骤1:类:JeecgDataAutorUtils
通过拦截器方式动态添加权限sql:
request.setAttribute(Globals.MENU_DATA_AUTHOR_RULE_SQL,                                MENU_DATA_AUTHOR_RULE_SQL);// 3.往sql串里面增量拼新的条件
String ss = (String) ContextHolderUtils.getRequest().getAttribute(
                                Globals.MENU_DATA_AUTHOR_RULE_SQL);
                System.out.println("最早dataRuleSql:"+ss);

打印情况:最早dataRuleSql: and create_by ='huadu';
成功设置了权限sql
步骤2: 类:CgAutoListController
Object dataRuleSql =JeecgDataAutorUtils.loadDataSearchConditonSQLString();
System.out.println("dataRuleSql:"+dataRuleSql);
打印情况:dataRuleSql:null
并没有获取拦截器中设置的权限sql。
疑问:同时就算获取了,在方法中也没有 用上这个这个动态生成的权限sql。是如何实现的行数据权限



longlong 发表于 2018-11-2 15:22:25

我用的online方式的原因
页: [1]
查看完整版本: 行数据权限bug