1.权限系统

 **访问控制策略**

访问控制策略一般有以下几种方式:
(1)自由型访问控制:用户|对象来决定访问权限。信息的所有者来设定谁有权限来访问信息以及操作类型(读,写,执行...)是一种基于身份的访问控制。例如UNIX权限管理。

(2)强制性访问控制:系统来决定访问权限。安全属性是强制型的规定,它由安全管理员或操作系统根据限定的规则确定的,是一种规则的访问控制

(3)基于角色的访问控制:角色决定访问权限。用组织角色来同意或拒绝访问。比MAC,DAC更灵活,适合作为大多数公司的安全策略,但对一些机密性高的政府系统不适用。

(4)规则驱动的基于角色的访问控制:提供了一种基于约束的访问控制,用一种灵活的规则描述语言和ixn的信任规则执行机制来实现。

(5)基于属性证书的访问控制:访问权限信息存放在用户属性证书的权限属性中,每个权限属性描述了一个或多个用户的访问权限。但用户对某一资源提出访问请求时,系统根据用户的属性证书中的权限来判断是否允许或拒绝。

 **RBAC**

RBAC(Role-Based Access Control)-基于角色的访问控制,模型是20世纪90年代研究出来的一种新模型,但从本质上讲,这种模型是对前面描述的访问矩阵模型的扩展。这种模型的基本概念是把许可权(Permission)与角色(Role)联系在一起,用户通过充当合适橘色的成员而获得该角色的许可权。

在实际的组织中,为了完成组织的业务工作,需要在组织内部设置不同的职位,职位既标识一种业务分工,又标识一种责任与权利。根据业务分工的需要,职位被划分给不同群体,各个群体的人根据其工作任务的需要被赋予不同的职责和权力,每个人有权了解与使用与自己任务相关的信息与资源,对于那些不应该被知道的信息则应该限制他们访问,这就产生了访问控制的需求。

【例子】在一个大学中,有校长,副校长,训练部长,组织处长,科研处长,教保处长等不同的职位,在通常情况下,职位所赋予的权利是不变的,但在某个职位上的工作的人可以根据需要调整,RBAC模型对组织内部的这些关系与访问控制要求给出了非常恰当的描述。

RBAC重要对象:
1.用户(User):角色施加的主体;用户通过拥有某个或多个角色以得到对应的权限
2.角色(Role):一组权限的集合
3.权限(Permission):用户限定能够访问的一个资源

【注意】
一个用户拥有若干角色,一个角色拥有若干权限,这样就构成了用户-角色-权限的授权模型。

2.组成

> 用户表:主键id,用户名,用户邮箱,是否为管理员,状态,创建时间,更新时间,......
> 角色表:角色id,角色名,状态,创建时间,更新时间
> 权限表(菜单权限表):权限id,权限标题,权限父级id,图标,权限路径,状态,排序,创建时间,更新时间,......
> 用户角色表:主键id,用户id,角色id,创建时间,更新时间
> 角色权限表:主键id,角色id,权限id,创建时间,更新时间,......

```sql

/*权限表(菜单表)*/
create table tb_promission
(id number primary key,--权限idtext varchar2(100) not null,--权限名称pid number not null,--权限父级idicon varchar2(100),--菜单显示的iconurl varchar2(100),--权限资源路径state number,--状态;该记录是否有效1:有效、0:无效sort number--排序码
)
insert into tb_promission(id,text,pid,icon,url,state,sort) values
(1,'店铺管理',-1,'','',1,1);
insert into tb_promission(id,text,pid,icon,url,state,sort) values
(2,'图书分类管理',-1,'','',1,2);
insert into tb_promission(id,text,pid,icon,url,state,sort) values
(3,'图书管理',-1,'','',1,3);
insert into tb_promission(id,text,pid,icon,url,state,sort) values
(4,'订单管理',-1,'','',1,4);
insert into tb_promission(id,text,pid,icon,url,state,sort) values
(5,'系统设置',-1,'','',1,5);insert into tb_promission(id,text,pid,icon,url,state,sort) values
(6,'店铺添加',1,'','/addshop.jsp',1,6);
insert into tb_promission(id,text,pid,icon,url,state,sort) values
(7,'店铺列表',1,'','/shopList.jsp',1,7);insert into tb_promission(id,text,pid,icon,url,state,sort) values
(8,'图书分类添加',2,'','/addBookType.jsp',1,8);
insert into tb_promission(id,text,pid,icon,url,state,sort) values
(9,'图书分类列表',2,'','/addBookTypeList.jsp',1,9);insert into tb_promission(id,text,pid,icon,url,state,sort) values
(10,'图书添加',3,'','/addBook.jsp',1,10);
insert into tb_promission(id,text,pid,icon,url,state,sort) values
(11,'图书列表',3,'','',1,11);
insert into tb_promission(id,text,pid,icon,url,state,sort) values
(12,'所有图书',11,'','/addBookList.jsp',1,12);
insert into tb_promission(id,text,pid,icon,url,state,sort) values
(13,'未上架',11,'','/notAvailableBook.jsp',1,13);
insert into tb_promission(id,text,pid,icon,url,state,sort) values
(14,'已上架',11,'','/listedBook.jsp',1,14);
insert into tb_promission(id,text,pid,icon,url,state,sort) values
(15,'已下架',11,'','/removedBook.jsp',1,15);insert into tb_promission(id,text,pid,icon,url,state,sort) values
(16,'所有订单',4,'','/orderList.jsp',1,16);
insert into tb_promission(id,text,pid,icon,url,state,sort) values
(17,'未付款订单',4,'','/UnpaidOrder.jsp',1,17);
insert into tb_promission(id,text,pid,icon,url,state,sort) values
(18,'已付款订单',4,'','/PaidOrder.jsp',1,18);
insert into tb_promission(id,text,pid,icon,url,state,sort) values
(19,'未收货订单',4,'','/UnconscionedOrder.jsp',1,19);
insert into tb_promission(id,text,pid,icon,url,state,sort) values
(20,'已完成订单',4,'','/DoneOrder.jsp',1,20);insert into tb_promission(id,text,pid,icon,url,state,sort) values
(21,'系统设置',5,'','/SystemSettings.jsp',1,21);
insert into tb_promission(id,text,pid,icon,url,state,sort) values
(22,'菜单管理',5,'','/MenuManagement.jsp',1,22);
insert into tb_promission(id,text,pid,icon,url,state,sort) values
(23,'权限管理',5,'','/PermissionManagement.jsp',1,23);
insert into tb_promission(id,text,pid,icon,url,state,sort) values
(24,'用户管理',5,'','/UserManagement.jsp',1,24);```

easyui-03(Tree后端工作)相关推荐

  1. 萨姆森阀门定位器3730-300000040000000.03结构和工作原理

    萨姆森阀门定位器3730-300000040000000.03结构和工作原理 结构和工作原理: 数字式电气阀门定位器是安装到气动控制阀上的重要附属装置,用于按输入控制信号将阀杆位置准确定位.由控制系统 ...

  2. java后端工作一年浅谈经验

    1.引言 毕业已经一年有余,这一年里特别感谢技术管理人员的器重,以及同事的帮忙,学到了不少东西.这一年里走过一些弯路,也碰到一些难题,也受到过做为一名开发却经常为系统维护和发布当救火队员的苦恼.遂决定 ...

  3. MVC +easyui +json 前后端交互动态生成树形菜单

    效果图: 1.view端代码实现,引入jquery.easyui 的js文件,创建树形菜单标签<ul>,如下所示: @{ViewBag.Title = "Home Page&qu ...

  4. easyui框架前后端交互_Vue+ElementUI+.netcore前后端分离框架开发项目实战

    点击上方"前端教程",选择"星标" 每天前端开发干货第一时间送达! 转自:我心依旧.cnblogs.com/-clouds/p/11633786.html 框架 ...

  5. easyui框架前后端交互_easyui前后端分离

    陈旧的开发模式 美工(ui工程师:出一个项目模型) 前端工程师做html页面 java工程师:将原有的html转成jsp,动态展示数据 前后端强依赖,后端必须要等前端的html做好才能套jsp.如果h ...

  6. 【EasyUI】Tree中自定义在节点前是否显示checkbox

    参考:https://blog.csdn.net/qq_40529542/article/details/90729145 在tree中利用checkbox显示复选框时,发现每个节点前面都有,如图所示 ...

  7. EasyUI树形菜单后端

    前言:在上一篇文章中我们通过EasyUI框架的树(tree).选项卡(tabs)两个组件:做出页面中通过点击菜单,显示菜单对应的页面,但是数据来源并非是活数据,而是写死在JSON文件中的数据,在项目开 ...

  8. easyui menu tree 实现左侧菜单树

    1.首先引入easyui 相关js和样式. 2.构建树     <ul id="tree" class="easyui-tree"></ul& ...

  9. 2023年03月个人工作生活总结

    本文为 2023 年 3 月工作生活总结. 研发编码 Linux 查 centos 版本 centos 有不同的方式查看版本号,结果稍有不同. [latelee@master work]$ cat / ...

最新文章

  1. Spring Cloud简介
  2. Centos 7网络属性配置及命令
  3. 对抗训练硬核分析:对抗样本与模型参数的关系
  4. 发光强度/光通量/光照度/亮度/坎德拉/流明/勒克斯/尼特之间的关系和换算
  5. 【渝粤题库】陕西师范大学201491 法学导论作业
  6. php类中双冒号和-的区别
  7. -bash: wget: 未找到命令_18个堪称神器的命令行工具,高效运维必备
  8. (16)FPGA面试题MOORE 与 MEELEY状态机
  9. InstallShield安装过程介绍
  10. wine手动安装wine-mono和wine-gecko组件
  11. linux的users命令,linux users命令详解
  12. 施耐德somachine4.1注册工具
  13. 左神算法:找到二叉树中符合搜索二叉树条件的最大拓扑结构(Java版)
  14. R语言数据分析 | 谱系图与聚类分析
  15. 【PPT】极简PPT设计方法
  16. 如何锁定excel的一列不允许修改编辑
  17. 回首风之忆(消息类型:聊天记录)
  18. php 建行外联平台退款
  19. MatlabR2012a 显示使用过期的注册文件破解(.lic)
  20. PDF文件JAVA去水印源码,java实现pdf文件加水印

热门文章

  1. 恒指怎么开户?恒指交易原则?
  2. 世界各国营商环境指数数据集(2004-2020年)
  3. Pycharm中显示Please select a valid Python Interpreter
  4. 联想移动员工内幕消息,资深评论
  5. Scrapy模拟登陆豆瓣抓取数据
  6. BMY、KMP、BM、BMHS算法性能比较
  7. ul如何在一排显示并且自动换行
  8. 李想:从放弃高考到如今第三次创业,我的经验和教训
  9. [Linux]基础知识(一)
  10. JS+CSS实现狙击镜视觉效果