分类: C#/.net
2022-05-31 11:03:03
“权限设计”是中后台的底层设计,是系统设计中最为重要的一环。它让使用者在有效的限制范围内访问被授权的资源,让管理者基于系统的安全规则与策略,控制不同用户合理访问对应数据。简单来说,即让什么样的人,可以做什么样的事。 正是有了权限系统,才可以让工作群组内不同人员、不同组织的分工,让不同角色专注于自己的工作范围 。
权限管理背后有很多的权限验证逻辑,优秀的权限设计能够有效提高系统的安全性、降低用户误操作,数据泄露的风险;而差劲的权限设计,往往会导致系统流程不通,系统的稳定性和安全性受到威胁。
从零设计一个权限管理模块复杂且繁琐,而在LeaRun.Net低代码开发平台中的独立权限管理模块,不需要写复杂的代码,只要业务关系写对即可配置好。
通常情况下,权限会被分成两个维度,分别为功能权限和数据权限。功能权限是指用户能够做什么样的操作,或者访问哪些资源,使用哪些功能;数据权限是指哪些数据属于你,或者属于你可以操作的范围。
在LeaRun.Net低代码 快速开发平台中的[功能权限]模块下,用户可以按角色访问控制设计,一旦用户被分配了适当的角色后,该用户就拥有此角色的所有操作权限。这样就不必在每次创建用户时都进行分配权限的操作,只要分配用户相应的角色即可。而且角色的权限变更比用户的权限变更要少得多,这样将简化用户的权限管理,减少系统的开销。
用户可在左侧的功能列表上进行勾选即可进行设计,同时在[功能权限]模块下又精确到[功能]、[按钮]、[列表]、[表单],用户可具体到对某个按钮、某个字段去进行能否查看、新增、修改、删除、审核等权限设计,用户点击相关按钮时,后台会校验用户角色下的所有权限是否包含该编辑权限,如果是,就可以进行下一步操作,反之提示无权限。真正做到了权限颗粒度精细化。
而在人员流动性较大、职位定位不清晰、经常变动的情况下,用户可以选择不通过角色集合的方式设计,而是在创建人员后直接进行配置,简单高效。
功能授权往往是单一维度的,数据授权和功能授权不同,数据是多维的,是抽象的。因此,LeaRun.Net低代码开发平台将数据维度拆分成[数据源数据权限]、[自定义功能数据权限]、[通用数据权限]三部分。
用户可以对具体人员设定其能查看到哪部分的数据源,以及对哪部分的数据有增删改查的权限,从而实现系统用户对数据资源可见性的控制。
并且LeaRun.Net低代码开发平台移动端和PC端联动同步,在PC端配置的权限设计在移动端可同步生成,省去重复配置的繁琐过程。
权限系统可以说是整个系统中最基础,同时也很复杂的模块。LeaRun.Net低代码开发平台可以适用于多种系统、多种使用场景,用户也可以在其基础上进行二次扩展来满足更多需求。
文.LeaRun