WisDom.Net 框架设计(五) 权限设计
WisDom.Net --权限设计
1.需求分析
基本在所有的管理系统中都离不开权限管理。可以这么说,权限管理是管理系统的核心所在。 权限管理说白一些就是每个人能够做什么,不能够做什么。可以说是一套规则。下面就说一下,在wisdom.net中的权限
1. 控制用户修改和删除数据。即 用户编辑和删除自己创建的数据,但是只能编辑和删除比自己权限小的人创建的数据
2. 模块的控制。 用户只能访问自己被授权访问的模块,不能访问其他模块
3. 用户被赋予不同的角色,各个角色的,权限和访问模块不同
4. 内置账号administrator 拥有最高权限。可以删除和修改所有数据,访问所有模块
2. 具体设计
1.判断用户模块

(图一)
通过图一,我们可以构建出用户能够访问的模块,但是这样做够吗?假设用户A 知道业务B 的页面地址为B.aspx,那么A用户直接通过IE .输入该地址不就越过了上面的限制吗。我们应该怎么样避免这样的情况,请看图二

(图二)
这样就可以避免用户进入非授权页面
2.判断用户模块
在这里我们做如下约定 我们将权限分为 查询 新增 编辑 删除,职位权限 5类 用掩码 1表示拥有权限 0表没有权限 如 1111 我们表示用户对该数据用 查询新增编辑删除的权限。在选择角色菜单时间赋予该角色 不同的权限 ,职位权限根据组织架构来。如果总经理为 10 ,经理为 5 等

(图三)
在图三中讲诉了,数据删除和读取的流程,数据新增和编辑,这个和上面的图三非常相似,不多说 如果是adminstrator 这种情况,只要直接加载相关的删除和执行删除操作既可以,比较简单
WisDom.Net 框架设计(五) 权限设计的更多相关文章
- 【权限设计】一个案例,三个角色,简单说下B端产品的权限设计
入行以来也接触过一些B端产品,这些产品之中权限管理是重中之重,权限管理不仅仅是整个系统的一个小小的模块,它一直贯穿整个系统,从登陆到操作到最后的登出.说它相当的复杂真不为过. 对于权限,如果从控制力来 ...
- 百万年薪python之路 -- RBAC角色权限设计
RBAC(Role-Based Access Control,基于角色的访问控制),就是用户通过角色与权限进行关联.简单地说,一个用户拥有若干角色,每一个角色拥有若干权限.这样,就构造成"用 ...
- ASP.NET MVC+EF框架+EasyUI实现权限管理系列(24)-权限组的设计和实现(附源码)(终结)
ASP.NET MVC+EF框架+EasyUI实现权限管系列 (开篇) (1):框架搭建 (2):数据库访问层的设计Demo (3):面向接口编程 (4 ):业务逻辑层的封装 ...
- WisDom.Net 框架设计(二) 服务总线
WisDom.Net 框架设计--服务总线 1.Soa 简介 soa 就是面向服务的体系结构 是一个组件模型,不同的组件之间通过定义良好的接口联系起来.就像盖房子一块砖头一块砖头的砌墙,一片一 ...
- ASP.NET MVC+EF框架+EasyUI实现权限管理系列(13)-权限设计
原文:ASP.NET MVC+EF框架+EasyUI实现权限管理系列(13)-权限设计 ASP.NET MVC+EF框架+EasyUI实现权限管系列 (开篇) (1):框架搭建 (2):数据 ...
- ASP.NET MVC+EF框架+EasyUI实现权限管理系列(2)-数据库访问层的设计Demo
原文:ASP.NET MVC+EF框架+EasyUI实现权限管理系列(2)-数据库访问层的设计Demo ASP.NET MVC+EF框架+EasyUI实现权限管系列 (开篇) (1)框架搭建 前言:这 ...
- 游戏UI框架设计(五): 配置管理与应用
游戏UI框架设计(五) --配置管理与应用 在开发企业级游戏/VR/AR产品时候,我们总是希望可以总结出一些通用的技术体系,框架结构等,为简化我们的开发起到"四两拨千金"的作用.所 ...
- 基于SSM框架的通用权限框架设计
1. 整体解决方案概述 1.1 权限整体解决方案概述 权限设计主要有一下几大部分组成: PassPort: 针对现在系统的分析,系统之间有部分信息是共享的,这部分信息将由 ...
- 基于RBAC的权限设计模型
个部件模型组成,这4个部件模型分别是基本模型RBAC0(Core RBAC).角色分级模型RBAC1(Hierarchal RBAC).角色限制模型RBAC2(Constraint RBAC)和统一模 ...
随机推荐
- java 包中的一款经典的singleton模式
/* * Copyright (C) 2010 The Android Open Source Project * * Licensed under the Apache License, Versi ...
- [LeetCode#156] Binary Tree Upside Down
Problem: Given a binary tree where all the right nodes are either leaf nodes with a sibling (a left ...
- android 中对apache httpclient及httpurlconnection的选择
在官方blog中,android工程师谈到了如何去选择apache client和httpurlconnection的问题: 原文见http://android-developers.blogspot ...
- HDU-1233 还是畅通工程 (prim 算法求最小生成树)
prim 算法求最小生成树 还是畅通工程 Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Oth ...
- Red5 项目的流事件回调流程和注意事项
回调流程 参考:Red5的一般客户端连接各个事件的触发顺序,经验证实际过程如下: 程序开始(在RED5启动的时候会自动去启动APP,从而触发以上事件) Start:MyChatRoomappStart ...
- Keepass 2.x 的一些新发现
近期将 Keepass 从 1.22 升级到了 2.24,经过一番折腾,发现有了很多新功能,也有一些之前被忽视的地方.再一次感叹这个软件的强大,向作者的无私奉献致敬! 其实,这个软件一直有 1.x 和 ...
- java.util.concurrent 包笔记 --- BlockingQueue
BlockingQueue 队列接口,具有 4 组不同的方法用于插入.移除以及对队列中的元素进行检查.如果请求的操作不能得到立即执行的话,每个方法的表现也不同.这些方法如下: Throws exc ...
- Codeforces Round #219 (Div. 2) E. Watching Fireworks is Fun
http://codeforces.com/contest/373/problem/E E. Watching Fireworks is Fun time limit per test 4 secon ...
- Mysql Binlog 三种格式介绍及分析
一.Mysql Binlog格式介绍 Mysql binlog日志有三种格式,分别为Statement,MiXED,以及ROW! 1.Statement:每一条会修改数据的sql都会记录在 ...
- CAS SSO:汇集配置过程中的错误解决方法
本教程为gevin.me原创文章,转载请注明: CAS SSO:配置过程中的错误解决方法 | Gevin’s Blog 本文将收集在配置CAS SSO遇到的所有错误,希望对大家有帮助,也方便下次搭建的 ...