一、该问题的重现步骤是什么?
1. 先配置数据权限
2. 再配置角色添加数据权限
3.查询你数据
二、你期待的结果是什么?实际看到的又是什么?
期待查出的数据进行的数据隔离,但是并没有,还是原来的数据
三、你正在使用的是什么产品,什么版本?在什么操作系统上?
四、请提供详细的错误堆栈信息,这很重要。
五、若有更多详细信息,请在下面提供。
需要把你的每一步配置都截图带上,否则我们无法重现帮你找原因。
数据权限没有生效主要去查这两点:
1. 超级管理员是不受数据权限控制的,要用其他的账号
2. 数据权限绑定的mapper方法看一下是否路径正确,如果匹配不到也是不会生效的
图三中我给任务发布配置了数据权限
图一中将该数据权限分配给了人事这个角色
图二中我通过人事下的测试角色-aj-0428这个账号登录,并且查看数据,发现并未生效
通过图四中的sql可以发现并未sql语句并无变化
数据权限看截图你只分配给了人事,没有分配给下属的测试角色
还有一点要确认的是,如果角色权限分配无误,你要去检查一下,真实调用的接口,有没有调用到你配置的mapper方法。
如果检查完都没问题,推荐到blade-starter-scope这个依赖看一下对接的拦截器,打个断点,看看问题出在哪一步。
如果不会查原因,把你的源码压缩一份发到我们的邮箱并标注每一步操作步骤:bladejava@qq.com
配置了人事下面了测试角色也还是不行,但是sql里面出现了,租户id的校验,即多了wta.tenant_id = '000000',但我配置本人权限或者其他权限都会出现这个租户id的校验,不知道是什么原因
mapper的方法的话路径我检查过好几遍,应该不是路径的问题,
关于打包源码发给你们效率太低了,方便远程帮忙看一下吗?
对我们来说,提供你们自己写的源码,我们本地调试,效率最高。况且你现在描述的东西都是局部的,我们没法本地重现。
要么你就以bladex现有的模块来做数据权限测试,这样你只需要发具体的步骤和配置就行,不需要发代码
主要是你自己写的代码没有截图,包括controller到mapper到代码我们都看不到,没法帮你判断。如果遇到一点点问题就需要帮着远程解决,而不是想着提高你们自己排查问题和描述问题的能力,那下次遇到问题你第一时间还是想着帮你远程解决,这样肯定是不行的。
所以现在你可以:1. 把代码简化一下打包发给我们,标注如何重现。 2. 以bladex现有模块为主,做一套配置然后如何重现,把步骤重新发一个贴发给我们
这不是扯淡吗,代码发给你们本地调试怎么可能有远程效率高呢,我们这里什么都是现成的,直接演示一遍说不定你们就能看出问题,而且帮助客户快速解决问题不是你们应该做的吗,别说什么提高调试能力什么的,那不是一朝一夕的事情,一个问题从发帖到回复,最起码要一天,就这样的工作效率能搞什么?而且你们提供的开发文档本来就不清晰,还不愿意远程协助,你有回复打字的功夫远程一下问题说不定早就解决了,还要跟你说明这,说明那,还要截图,还要说明步骤,你怎么不让我给你写本书呢?要是想问题少,你们做开发文档的时候就用点心,把各种情况说情况,别推来推去,要么就积极的远程协助。
大部分用户根据文档都能生效数据权限,你们没有生效的前提是自己写了代码,而我们本身没有你们的代码,再加上描述不够清楚是没法解决的。远程处理是我们本地没法重现了才会采取的最后一步。用户3000+如果一个文档上标明的功能都需要上来就远程,那就太耗费时间了。
99%的用户都是很乐意打包发源码给我们来调试的,我们本地调试完如果解决不了也会主动要求远程解决。虽然你们是客户,但请你不要把自己摆在上帝的位置,尊重是相互的。
扫一扫访问 Blade技术社区 移动端