• 通用权限系统的一些想法


      这几天闲来无事,想做一个通用权限系统。原来开发的系统,权限这一块都是写死的,每个系统权限都要重新写逻辑,曾经想过写个通用的,但是思路一直没有捋顺,平时也比较忙,也就没有深究。 这几天阳光明媚,空气清新,浑身舒畅,突然之间灵光乍现,让我想到一个通用权限的实现方法。现在我把思路给大家分享一下。

      之前在园里看到有人 发 .net 通用权限系统系列的博文,但是太长,没看, 我现在这个思路也许跟他们会有雷同,但绝属巧合。

      所谓的通用权限系统,真是的是通用的吗,不需要写代码吗?其实不然,腾讯百度的开放平台可通用吧,还是要写代码,所谓通用只是把相对独立的功能封装起来,方便调用而已。通用权限也是如此,我们可以把权限的判断进行封装,然后在业务逻辑处拿出来调用就可以了,比如如下代码:

    if(power.has('A001'))
    {
         //执行添加操作
    }

    if(power.has('A002'))
    {
         //执行删除操作
    }

    A001是权限代码,名字自己随便起,这里代表添加权限。 这段代码的意思就是,如果有A001的权限就可以执行添加操作,有A002的权限就可以执行删除操作。 power 就是封装的权限类,我们只需要在有权限控制的业务逻辑处加入权限判断代码“power.has('权限编号')” 就实现了所有业务的权限控制。

      接下来就是给用户分配权限,我们不知道以后这个通用权限系统会增加什么功能模块,所以分配权限模块要做成动态可配置的,功能模块的操作权限可自定义添加,为每个操作分配权限代码,以供power类调用进行权限判断。

      有了以上两部分(权限判断、权限分配),通用权限的思路就基本出来了。目前我也是在思考,还没有到编码阶段,等系统做出来后再与大家分享。

  • 相关阅读:
    交叉编译qt5.4.1遇到的错误
    qt5.4.1官网上找不到
    Runtime dependency gstreameraudio1.0 found: NO (tried pkgconfig and cmake)
    gstreamer库 ubuntu下安装
    gstreamer编译错误
    gstreamer在ubuntu上源码编译
    http学习
    SQL定义变量
    对w3wp.exe的一点认识!
    官方发布!DevExpress WPF 2022年产品升级路线图
  • 原文地址:https://www.cnblogs.com/changbin/p/3601671.html
Copyright © 2020-2023  润新知