首页 > 其他分享 >EDP .Net开发框架--权限

EDP .Net开发框架--权限

时间:2024-05-20 09:09:31浏览次数:22  
标签:item -- 业务 对象 EDP 授权 Net 权限 StudentModel

平台下载地址:https://gitee.com/alwaysinsist/edp


权限介绍

权限实际上就是谁有权使用或是访问什么,这里的“谁”可以视作"授权对象","什么"可以视作"权限对象"。例如张三可以访问用户数据,那么张三就是“授权对象”,用户数据就是"权限对象"。

  • 权限对象
    包括业务功能,业务功能元素,WebApi接口,业务参数,业务模型,业务模型属性,业务模型视图。

  • 授权对象
    包括职务,部门职位,组织类型,组织单元,角色,用户。

权限管理

权限设置是双向的,既可以通过“权限对象”的维度来设置,也可以通过“授权对象”的维度来设置。

通过权限对象设置权限

这里以"业务模型"为例。
image
image
左边勾选需要授权的"权限对象",右边勾选需要授权的“授权对象”,保存后即可完成授权操作。

通过授权对象设置权限

这里以"职务"为例。
image
image
保存后即可完成授权操作。

权限查看和删除

这里以“用户”和“职务”为例。

某用户的权限列表
image

某职务的权限列表
image

继承过来的权限是不能删除的,只能删除自身所的拥有权限。

权限实现(使用)

public class StudentModel: ModelPermissionBase
业务对象继承基类ModelPermissionBase。

点击查看代码
StudentModel item = new StudentModel();
item.ID = KeyValue;
item.Query();

List<StudentModel> itemList = new List<StudentModel>();
itemList.Query();
以上示例分别为单个业务对象的查询和业务对象集合的查询,其都实现了权限的管控。
  • 没有权限的属性为null值,同时业务对象上的AccessPropertyList属性中为有权限的属性名称。
  • 列表中直接返回有权限数据集合(行权限)。

标签:item,--,业务,对象,EDP,授权,Net,权限,StudentModel
From: https://www.cnblogs.com/alwaysinsist/p/18190630

相关文章

  • 开源低代码框架 ReZero API 正式版本发布 ,界面操作直接生成API
    一、ReZero简介ReZero是一款.NET中间件:全网唯一界面操作就能生成API, 可以集成到任何.NET6+API项目,无破坏性,也可让非.NET用户使用exe文件免费开源:MIT最宽松协议,一直从事开源事业十年,一直坚持开源1.1纯ReZero开发适合.NetCore零基础用户,大大简化了.NetCore开发门......
  • 当装饰者模式遇上Read Through缓存,一场技术的浪漫邂逅
    在《经验之谈:我为什么选择了这样一个激进的缓存大Key治理方案》一文中,我提到在系统中使用的缓存是旁路缓存模式,有读者朋友问,有没有用到过其他的缓存模式,本文将结合一个我曾经工作中的案例,使用装饰者模式实现ReadThrough缓存模式,助你轻松掌握设计模式和缓存。一、缓存模式不说废......
  • 终于搞懂了!原来 Vue 3 的 generate 是这样生成 render 函数的
    前言在之前的面试官:来说说vue3是怎么处理内置的v-for、v-model等指令?文章中讲了transform阶段处理完v-for、v-model等指令后,会生成一棵javascriptAST抽象语法树。这篇文章我们来接着讲generate阶段是如何根据这棵javascriptAST抽象语法树生成render函数字符串的,本文中使用的v......
  • redis 网络库
    APIintanetTcpConnect(char*err,char*addr,intport);intanetTcpNonBlockConnect(char*err,char*addr,intport);intanetUnixConnect(char*err,char*path);intanetUnixNonBlockConnect(char*err,char*path);intanetRead(intfd,char*buf,intcount......
  • 【JAVA】BOSS系统发版艺术:构建高效、优雅的微服务部署策略
    在现代软件开发领域,微服务架构与容器化部署已迅速成为行业新趋势。微服务架构通过将应用拆分成多个小型、自治的服务单元,每个服务承担某项特定的业务功能。而容器化部署则以其轻量级和高度可移植的特性,为这些微服务的有效打包、分发和运行提供了强大支持。在这样的环境中,实现微服......
  • QPrinter、QPrinterInfo、QPageLayout
    QPrinter一、描述QPrinter类是在打印机上绘制的绘制设备,其使用方式与其他绘图设备(如QWidget和QPixmap)几乎完全相同。提供了一组附加功能来管理特定于设备的功能,例如方向、分辨率、在生成文档时逐步浏览文档中的页面。在无效打印机上设置参数(如纸张尺寸和分辨率)是未定义的。......
  • 水位过程曲线(水位过程线)和水位-流量关系曲线的区别
    水位过程线(Stagehydrograph)是在水利水电工程专业中表示地表来水水位与时间关系的曲线。以时间为横坐标,以水位为纵坐标绘成的曲线,它显示了水位随时间变化的情况。可用以研究测站水位的变化规律。参考:https://baike.baidu.com/item/水位过程线/6124201?fr=ge_ala水位-流量关系曲......
  • win11系统 鼠标开机后是好的,但是过一会后响应慢变卡顿怎么回事
    刚开机好的,过一会变卡顿1打开控制面板——电源选项选择【平衡】点击【更改计划设置】2 更改USB设置为【已禁用】即可  3顺便把硬盘也改了,免得掉盘 ......
  • 一个页面从输入URL到加载显示完成,这个过程发生了什么?
    目录一、解析URL1、流程2、URL格式:3、示例二、浏览器封装HTTP请求报文1、流程2、HTTP请求报文例子3、封装三、DNS解析1、缓存判断1.1、浏览器缓存1.2、操作系统缓存1.3、路由器缓存2、递归查询至ISPDNS服务器3、迭代查询过程4、保存结果至各级缓存四、建立TCP连接(三次握手)1、三次......
  • vscode 无法调试 golang testify suite 中的单个 test 的解决办法
    目录问题描述网上的讨论最终的解决办法问题描述对于如下这样简单的测试文件:packagemain//Basicimportsimport( "testing" "github.com/stretchr/testify/assert" "github.com/stretchr/testify/suite")varassertObj*assert.Assertions//Definethesuite,......