zoukankan      html  css  js  c++  java
  • 系统用户权限与角色分析[转]

    作者:冷风.net
    一、术语说明:
    1. 用户与角色:
    用户与角色是使用权限的基本单位,角色是一组具有相同限限的用户变集。
    用户与用户之间不存在相互隶属关系,它只能属于某个角色,角色可以隶属于其它角色,且可以为多重隶属关系。
    2. 应用模块
    应用模块通常是指某个页面(在WEB中)如统计报表页面,用户信息页面等等。
    3. 操作
    即指在应用模块中对某个功能是否具有访问权限。如用户信息页面的修改功能,删除功能等等
    4. 授权
    指用户角色能对哪个应用模块中的某个功能是否具有执行许可。这里执行的许可指的是授权的三种状态:授予、拒绝、继承。
    授予:用户角色对应用模块的某项操作具有执行权力。
    拒绝:用户角色对应用模块的某项操作不具有执行权力。
    继承:用户角色对应用模块的某项操作是否具有执行权力取决于它的父角色是否对该应用模块的指定操作的执行权力。
    二、对用的E-R图

    三、下面我们来写一个类来获取用户是否对应用模块或某项操作具有执行能力。

    類名

    Roles

    CreateRole

    創建一個新的角色

    DeleteRole

    刪除角色

    AddUserToRole

    將用戶添加到角色

    RemoveUserFromRole

    將用戶從角色中移除

    IsUserInRole

    判斷用戶是否在角色中

    RoleExists

    判斷角色是否存在

    GetPowerForRole

    獲得角色的許可權

    IsRoleInPower

    判斷指定的角色是否存在相應的許可權

     


    if(Roles.IsRoleInPower(“用户”,”应用模块或操作”))
    {
     Alert(“可以执行该应用模块或操作”);
    }
    else
    {
     Alert(“无权执行该应用模块或操作”);
    }
  • 相关阅读:
    3. Node.js REPL(交互式解释器)
    2. npm 的使用
    hdu 6155 - Subsequence Count
    蒟蒻ACMer回忆录 · 一段弱校ACM的奋斗史
    Codeforces731F Video Cards
    Codeforces731E Funny Game
    Codeforces731D 80-th Level Archeology
    Codeforces732F Tourist Reform
    Codeforces732E Sockets
    Codeforces732D Exams
  • 原文地址:https://www.cnblogs.com/kingangWang/p/2195651.html
Copyright © 2011-2022 走看看