仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 700|回复: 16
打印 上一主题 下一主题

[学习教程] 了解下JAVA的关于Java脚色会见把持(RBAC)

[复制链接]
不帅 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-18 11:16:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
一旦你有了思想,那你编的程序就有了灵魂,不管是什么语言到了你的手里都会是你的工具而已,他们的价值是能尽快帮助你实现你想要的目标。但是如果你没有了思想,那就像是海里的帆船失去了船帆,是很难到打海的另一边的。
脚色会见把持(RBAC)引进了Role的观点,目标是为了断绝User(即举措主体,Subject)与Privilege(权限,暗示对Resource的一个操纵,即Operation+Resource)。
Role作为一个用户(User)与权限(Privilege)的代办署理层,解耦了权限和用户的干系,一切的受权应当赐与Role而不是间接给User或Group.Privilege是权限颗粒,由Operation和Resource构成,暗示对Resource的一个Operation.比方,关于旧事的删除操纵。Role-Privilege是many-to-many的干系,这就是权限的中心。
基于脚色的会见把持办法(RBAC)的明显的两年夜特性是:1.因为脚色/权限之间的变更比脚色/用户干系之间的变更绝对要慢很多,减小了受权办理的庞大性,下降办理开支。2.天真地撑持企业的平安战略,并对企业的变更有很年夜的伸缩性。
RBAC基础观点:
RBAC以为权限受权实践上是Who、What、How的成绩。在RBAC模子中,who、what、how组成了会见权限三元组,也就是“Who对What(Which)举行How的操纵”。
Who:权限的拥用者或主体(如Principal、User、Group、Role、Actor等等)
What:权限针对的对象或资本(Resource、Class)。
How:详细的权限(Privilege,正向受权与负向受权)。
Operator:操纵。标明对What的How操纵。也就是Privilege+Resource
Role:脚色,必定数目的权限的汇合。权限分派的单元与载体,目标是断绝User与Privilege的逻辑干系。
Group:用户组,权限分派的单元与载体。权限不思索分派给特定的用户而给组。组能够包含组(以完成权限的承继),也能够包括用户,组内用户承继组的权限。User与Group是多对多的干系。Group能够条理化,以满意分歧层级权限把持的请求。
RBAC的存眷点在于Role和User,Permission的干系。称为Userassignment(UA)和Permissionassignment(PA)。干系的摆布双方都是Many-to-Many干系。就是user能够有多个role,role能够包含多个user.
但凡用过RDBMS都晓得,n:m的干系必要一其中间表来保留两个表的干系。这UA和PA就相称于两头表。现实上,全部RBAC都是基于干系模子。
Session在RBAC中是对照隐晦的一个元素。尺度上说:每一个Session是一个映照,一个用户到多个role的映照。当一个用户激活他一切脚色的一个子集的时分,创建一个session.每一个Session和单个的user联系关系,而且每一个User能够联系关系到一或多个Session.
在RBAC体系中,User实践上是在饰演脚色(Role),能够用Actor来代替User,这个设法来自于BusinessModelingWithUML一书Actor-Role形式。思索到多人能够有不异权限,RBAC引进了Group的观点。Group一样也看做是Actor.而User的观点就具象到一团体。
这里的Group和GBAC(Group-BasedAccessControl)中的Group(组)分歧。GBAC多用于操纵体系中。个中的Group间接和权限相干联,实践上RBAC也自创了一些GBAC的观点。
Group和User都和构造机构有关,但不是构造机构。两者在观点上是分歧的。构造机构是物理存在的公司布局的笼统模子,包含部门,人,职位等等,而权限模子是对笼统观点形貌。构造布局一样平常用Martinfowler的Party或义务形式来建模。
Party形式中的Person和User的干系,是每一个Person能够对应到一个User,但大概不是一切的User都有对应的Person.Party中的部门Department或构造Organization,都能够对应到Group.反之Group一定对应一个实践的机构。比方,能够有副司理这个Group,这是多人有不异职责。
引进Group这个观点,除用来办理多人不异脚色成绩外,还用以办理构造机构的另外一种受权成绩:比方,A部门的旧事我但愿一切的A部门的人都能看。有了如许一个A部门对应的Group,便可间接受权给这个Group.
Role作为一个用户(User)与权限(Privilege)的代办署理层,解耦了权限和用户的干系,一切的受权应当赐与Role而不是间接给User或Group.Privilege是权限颗粒,由Operation和Resource构成,暗示对Resource的一个Operation.比方,关于旧事的删除操纵。Role-Privilege是many-to-many的干系,这就是权限的中心。
基于脚色的会见把持办法(RBAC)的明显的两年夜特性是:1.因为脚色/权限之间的变更比脚色/用户干系之间的变更绝对要慢很多,减小了受权办理的庞大性,下降办理开支。2.天真地撑持企业的平安战略,并对企业的变更有很年夜的伸缩性。

在1995年5月23日以“Java”的名称正式发布了。
小妖女 该用户已被删除
沙发
发表于 2015-1-20 18:52:13 | 只看该作者
《JAVA语言程序设计》或《JAVA从入门到精通》这两本书开始学,等你编程有感觉的时候也可以回看一下。《JAVA读书笔记》这本书,因为讲的代码很多,也很容易看懂,涉及到面也到位。是你学习技术巩固的好书,学完后就看看《JAVA编程思想》这本书,找找一个自己写的代码跟书上的代码有什么不一样。
兰色精灵 该用户已被删除
板凳
发表于 2015-1-24 16:55:09 | 只看该作者
《JAVA语言程序设计》或《JAVA从入门到精通》这两本书开始学,等你编程有感觉的时候也可以回看一下。《JAVA读书笔记》这本书,因为讲的代码很多,也很容易看懂,涉及到面也到位。是你学习技术巩固的好书,学完后就看看《JAVA编程思想》这本书,找找一个自己写的代码跟书上的代码有什么不一样。
谁可相欹 该用户已被删除
地板
发表于 2015-1-26 08:49:35 | 只看该作者
是一种使网页(Web Page)产生生动活泼画面的语言
再现理想 该用户已被删除
5#
发表于 2015-1-31 06:57:27 | 只看该作者
其实说这种话的人就如当年小日本号称“三个月拿下中国”一样大言不惭。不是Tomjava泼你冷水,你现在只是学到了Java的骨架,却还没有学到Java的精髓。接下来你得研究设计模式了。
若天明 该用户已被删除
6#
发表于 2015-2-2 22:26:20 | 只看该作者
Java是一个纯的面向对象的程序设计语言,它继承了 C++语言面向对象技术的核心。Java舍弃了C ++语言中容易引起错误的指针(以引用取代)、运算符重载(operator overloading)
透明 该用户已被删除
7#
发表于 2015-2-4 13:31:57 | 只看该作者
是一种使网页(Web Page)由静态(Static)转变为动态(Dynamic)的语言
第二个灵魂 该用户已被删除
8#
发表于 2015-2-4 23:24:17 | 只看该作者
一直感觉JAVA很大,很杂,找不到学习方向,前两天在网上找到了这篇文章,感觉不错,给没有方向的我指了一个方向,先不管对不对,做下来再说。
只想知道 该用户已被删除
9#
发表于 2015-2-8 06:41:14 | 只看该作者
是一种使用者不需花费很多时间学习的语言
变相怪杰 该用户已被删除
10#
发表于 2015-2-17 03:03:14 | 只看该作者
是一种将安全性(Security)列为第一优先考虑的语言
再见西城 该用户已被删除
11#
发表于 2015-2-19 07:48:34 | 只看该作者
你快去找一份Java的编程工作来做吧(如果是在校学生可以去做兼职啊),在实践中提高自己,那才是最快的。不过你得祈祷在公司里碰到一个高手,而且他 还愿意不厌其烦地教你,这样好象有点难哦!还有一个办法就是读开放源码的程序了。我们知道开放源码大都出自高手,他们设计合理,考虑周到,再加上有广大的程序员参与,代码的价值自然是字字珠叽,铿锵有力(对不起,偶最近《金装四大才子》看多了)。
海妖 该用户已被删除
12#
发表于 2015-2-26 02:59:34 | 只看该作者
是一种突破用户端机器环境和CPU
不帅 该用户已被删除
13#
 楼主| 发表于 2015-2-26 17:32:25 | 只看该作者
不过,每次的执行编译后的字节码需要消耗一定的时间,这同时也在一定程度上降低了 Java 程序的运行效率。
爱飞 该用户已被删除
14#
发表于 2015-3-2 23:51:53 | 只看该作者
《JAVA语言程序设计》或《JAVA从入门到精通》这两本书开始学,等你编程有感觉的时候也可以回看一下。《JAVA读书笔记》这本书,因为讲的代码很多,也很容易看懂,涉及到面也到位。是你学习技术巩固的好书,学完后就看看《JAVA编程思想》这本书,找找一个自己写的代码跟书上的代码有什么不一样。
15#
发表于 2015-3-9 13:45:32 | 只看该作者
你就该学一学Servlet了。Servlet就是服务器端小程序,他负责生成发送给客户端的HTML文件。JSP在执行时,也是先转换成Servlet再运行的。虽说JSP理论上可以完全取代Servlet,这也是SUN推出JSP的本意,可是Servlet用来控制流程跳转还是挺方便的,也令程序更清晰。接下来你应该学习一下Javabean了,可能你早就看不管JSP在HTML中嵌Java代码的混乱方式了,这种方式跟ASP又有什么区别呢?
admin 该用户已被删除
16#
发表于 2015-3-16 22:29:42 | 只看该作者
还好,SUN提供了Javabean可以把你的JSP中的 Java代码封装起来,便于调用也便于重用。
简单生活 该用户已被删除
17#
发表于 2015-3-23 05:24:53 | 只看该作者
有时间再研究一下MVC结构(把Model-View-Control分离开的设计思想)
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-11-15 05:31

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表