zhontai / Admin.Core

中台Admin前后端分离的权限管理系统。支持多租户、数据权限、动态Api、任务调度、OSS文件上传、滑块拼图验证、国内外主流数据库自由切换和动态高级查询。基于.Net跨平台开发的WebApi。集成统一认证授权、事件总线、数据验证、分布式缓存、分布式事务、Ip限流、全Api鉴权、集成测试、性能分析、健康检查、接口文档等。
https://admin.zhontai.net
MIT License
1.31k stars 315 forks source link

关于数据获取时的权限判定 #95

Open BruceLuo2 opened 1 month ago

BruceLuo2 commented 1 month ago
  1. 每个人可能对应多个岗位, 数据权限不同, 当我设置a岗位能看到a功能本人的数据, 而b岗位能看到b功能的所有数据, 但是a b功能的默认的DataScope都是Self, 这在后台似乎很难做权限判定.
  2. 希望能够加入数据查询时自动的权限判断, 如果在有分部门的系统, 那每个功能都得手动去判定DeptWithChild的权限, 这样似乎会很繁琐

image

问题可能已经有解决方案了, 我感觉Admin的权限判定系统应该很强大, 建议在文档中加入后台权限判定的使用文档~ 感谢大佬

zhontai commented 1 month ago

如果是老版,建议参考最新源码,如果是app项目直接升级到最新版本 appconfig权限配置中开启接口级权限,根据不同角色的数据权限范围可以动态设置接口的数据权限范围

zhontai commented 1 month ago

这个确实有必要增加到文档中说明一下。

BruceLuo2 commented 1 month ago

如果是老版,建议参考最新源码,如果是app项目直接升级到最新版本 appconfig权限配置中开启接口级权限,根据不同角色的数据权限范围可以动态设置接口的数据权限范围

我的版本是8.1, 应该算是比较新的版本, 同时数据权限已经开启, 但似乎是失效的.

BruceLuo2 commented 1 month ago

这个确实有必要增加到文档中说明一下。

大佬, 我这块有点着急, 如果权限是本部门和下级部门数据都可见, 代码层面有示例吗? 您能不能给我些思路

zhontai commented 1 month ago

admin是超级管理员不受权限管控,你新建一个普通账号测试一下。数据权限只有表打了IData接口才会有增加对应部门和本人权限管控,权限系统表没有增加IData接口不会受到数据权限管控,用户选择查询会单独用到数据权限

BruceLuo2 commented 1 month ago

admin是超级管理员不受权限管控,你新建一个普通账号测试一下。数据权限只有表打了IData接口才会有增加对应部门和本人权限管控,权限系统表没有增加IData接口不会受到数据权限管控,用户选择查询会单独用到数据权限

我用普通账号测确实也不能按照预期效果进行数据权限控制, IData接口怎么打开, 大佬?

zhontai commented 1 month ago

appconfig中有数据权限开关,默认是打开的,可以不用设置。实体继承IData后,用户登录会根据角色设置的数据权限范围来控制关联的接口数据权限