zoukankan      html  css  js  c++  java
  • Ornametn 权限概述

         Ornament中权限是用RBAC的概念进行划分的,也就是多用户对多角色,其中用户和角色不多讲,请参考其他RBAC的文章。

         Permission在Ornament中,我把它叫做许可证。他对应的关系式:

         许可证(Permission)=角色(Role)+资源(Resource)+操作(Operator)

         一个许可证只能对一种资源,而操作是属于资源的,每种不同的资源都有它自己所属的操作,如查看系统日志和查看用户信息的“查看”操作是两个不同的操作。按权限控制粒度划分,就会得下面这个图:

    image

           从图中可以知道,操作是Ornament中最小的权限单元。而最大的粒度是角色。在ASP.net中,已经提供了基于角色的访问控制,而Ornament只是继续细化这种管理方法,提供了操作这种更小的单元,所以在基于Ornament开发中,应该把所权限的控制粒度控制在“操作”和资源,而不是角色。 例如过去的ASP.net全新模型中,检查是否拥有Delete user这个权限的代码可能如下:

         DeleteButton.Visable = HttpContext.User.IsInRole("RoleWithDeleteUserPermission");

    而使用Ornament 就应该如下:

         DeleteButton.Visable = ornamentUser.HasRight(UserOperator.Deleted,”User”);

    只有在每个功能模块下都按照操作去编写代码,那么角色,用户就会更加灵活。

  • 相关阅读:
    移动端小tips
    是否该放弃东莞的工作
    读书有感-learn html5 and javascript for ios
    eNSP多路由实现互联互通(华为路由E口直连)
    iTextSharp操作表格排版问题
    我今天开通博客
    12年的女程序员重新回归
    前端css样式规划
    前端神器-webstorm2017
    远程桌面资料共享
  • 原文地址:https://www.cnblogs.com/fantasylu/p/2049061.html
Copyright © 2011-2022 走看看