不同租户下 同一个菜单功能的数据权限如何设置?

Blade 未结 2 996
smthhy
smthhy 剑圣 2021-05-18 17:16

一、该问题的重现步骤是什么?

1. 比如我有两个租户12345 和 45678

2. 租户12345 下面有组织机构 

   产品部    ID:1123598821738675201

   设计部    ID:1123598821738675202

   开发部    ID:1123598821738675203

3.租户45678下面有组织机构

    售前部   ID:1123598821738675204

    财务部   ID:1344149995722121217

    售后部   ID: 1347454260159004674


因为是SAAS平台,所有【功能菜单】统一有开发方设置的 【blade_menu】表


比哪,现在【用户管理】 这个功能,现要求租户12345 下设置他租户下角色 【产品主管】 在【用户管理】 下面看到 【产品部】和【设计部】的用户

                                                        而在租户45678 下设置他的租户下角色 【财务主管】在 【用户管理】 下面看到【财务部】的用户


image.png

上面是以 租户【000000】 登录 为租户【12345】 设置的用户的数据权限,然后我用租户【12345】 登录后 设置其租户下的数据权限

image.png


设置过后,我现在换个租户【45678】进行登录,同样也要设置用户功能下的数据权限


image.png


二、你期待的结果是什么?实际看到的又是什么?

我想同一个菜单功能,在不同租户下,可以设置其租户下的数据权限,也就是租户间各自的数据权限。这个设置其中的一个租户的数据权限,别的租户下就能看到另外一个租户的 ,这样是一个问题啊?

希望作者能快点加以解决



三、你正在使用的是什么产品,什么版本?在什么操作系统上?


四、请提供详细的错误堆栈信息,这很重要。


五、若有更多详细信息,请在下面提供。

2条回答
  • 2021-05-18 21:11

     1. “我想同一个菜单功能,在不同租户下,可以设置其租户下的数据权限,也就是租户间各自的数据权限

    答:很简单,只要创建两条记录就行了,管理员在配置的时候,选中对应的就行。比如租户 12345就给他分配 "用户管理[自定义]租户12345" 的权限,租户45678就给他分配 "用户管理[自定义]租户45678"  

     2. “这个设置其中的一个租户的数据权限,别的租户下就能看到另外一个租户的 ,这样是一个问题啊?

    答:这不是问题,首先租户请求都会在sql结尾加上自己的租户编号,就算给这个租户分配了另外一个租户id的查询条件,那他也是看不到的,因为最后的sql会变成 select * from test where tenant_id = 12345 and tenant_id = 45678

     

    权限设计是非常灵活的,你想多少种都可以,建立对应的权限配置就行。但是同一条配置记录,你想不同的租户有不同的功能,那是不可能的。


    另外请将账号邮箱修改为下单购买授权的qq邮箱便可咨询商业版疑问


    0 讨论(0)
  • 2021-05-18 22:17

    好的  那就是非000000 的租户自己不能设置数据权限了是吧。必须000000租户给他进行设置了

    0 讨论(0)
提交回复