仓酷云

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

[学习教程] 了解下JAVA的Acegi(三):Acegi?Who are you?

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

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

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

x
windows系统样,他们做了什么事或者留了一些后门程序,谁都不知道,二,java开发是跨平台,任何系统上都可以运行,对于保密型系统和大型系统开发这是必要的
Acegi是个甚么?
是一个基于Spring的开源框架,用来做平安把持.基于Spring?能不克不及在不必Spring的情形下设置Acegi呢?Acegi官网上有一个链接:UseWithouSpring,看来是能够的,本人还没有下手做过.完成平安把持?道理是甚么?Servlet的Filter和AOP机制:使用Filter,Acegi完成了基于Web有用的URI回护;经由过程AOP,Acegi完成了对象会见办法的回护;使用ACL,Acegi完成了对prototype范例的Object举行过滤和回护。
Acegi的中心观点是甚么?相似完成又哪些?
Acegi实质上是一种securitysolution的完成.
而一样平常而言,securitysolution都有哪些基础观点呢?基础观点有两个:认证(Authentication)与受权(Authorization).任意说一下,我一向以为这两个词翻译的很不直不雅,若光看这两个字,以为非常摸不着思想.我们来看下Acegi官方文档的注释。authenticationistheprocessofestablishingaprincipaliswhotheyclaimtobe.A"principal"generallymeansauser,deviceorsomeothersystemwhichcanperformanactioninyourapplication.这里边有个中心词principal,普通的了解是要在我们所写体系中操纵的东东,这个东东能够是人(固然这是最见的),能够是某一一般的甚么设备(呆板人啥的,呵呵),还能够是其余体系。有了这个,authentication的了解就水到渠成了:authentication就是看看要操纵我们体系的东东是否是真的,这在实践使用中年夜多是经由过程暗码考证来完成的,也就是对灯号,如灯号对上了,你就是真的了。而Authorization呢?"Authorization"referstotheprocessofdecidingwhetheraprincipalisallowedtoperformanactioninyourapplication.下面我们说到一个principal要操纵我们的体系,倘使这个principal是真的,那接上去很天然的就是看Ta有无权限来做Ta想要的操纵了.这也恰是Authorization要干的事儿.
有了这两个基本的观点,接下的一切事了解起来就简单了.这个接上去的事就是Acegi怎样计划完成.如果本人来计划完成那还真是个成绩,不外看他人的还不至于那末难.
对这两个最中心的观点说的有点多了,上面看下Acegi的相似完成,也就是Acegi的兄弟们,和跟他们比拟,Acegi本身又有甚么上风.
要说Acegi的兄弟,人们最简单想起来的仍是JAAS.人人晓得,这是JavaEE里尺度完成,那是因为JAAS的甚么弱点以致小弟Acegi把风头给抢了呢?JAAS设置烦琐、供应的平安会见机制粒度不敷和JAAS在WAR和EAR层面上没有移植性这些弱点是江湖传播很广的说法,固然自己也没时机做这方面的具体对照,临时就吠形吠声地承受这类说法吧。
别的一个兄弟我也是这些天刚熟悉,一个叫Crowd的框架,因为一点也没有打仗过,也就不刚妄下判别。看一些文章晓得这个Crowd能够跟Acegi分离起来用,想必是它填补了些Acegi的弱点吧。
中心部件都有哪些?
按了解的深度,Acegi有两个条理上的中心部件。第一层的中心部件是以设置的角度来看的,也就是说我们要想设置一个Acegi回护的体系都要触及到哪些.第二层是完成的中心,也就是说它们全部Acegi就玩不转了.这个第二层跟设置纷歧样,第一层所说的设置仅仅是使用的一方面,Acegi能够有多种有用并加本人的扩大,而一切一切的这统统都是环绕第二层的中心部件组建的.
第一层的部件放到下一篇分离实例来讲明,这里重点说下完成层面上的中心部件,它们顺次是:SecurityContextHolder,SecurityContext,HttpSessionContextIntegrationFilter(这个虽放到这里,它在这里也能够说是代表了它们一个群体),Authentication,GrantedAuthority,UserDetails,UserDetailsService.一共七个,我们在这里称之为"七剑".写到这里,头脑里模模糊糊感到到老子的道家头脑了.你看,Acegi的中心头脑是"回护",环绕这个中心头脑分出两个观点Authentication和Authorization,详细到怎样来完成这个两个观点就有了我们所说的"七剑",再往下就是针对分歧场所使用的支持,而再往下就是如今千万万万项目顶用到的Acegi设置及扩大.这一个演化系列是否是有点像"道生一,平生二,二生三,三生万物"呢?
对这"七剑"的了解很主要,只要了解了它们,才干到达万变不离其宗地天真设置.
这"七剑"在这也先不睁开会商,等在体味了实例及剖析了"第一层中心部件"后再回过火看吧,那样了解上更天然些.
絮絮不休写了很多,转头总结下,也为下篇写下开首:这篇以静态的角度了Acegi的中心观点及其中心部件,下一篇中将下手设置一个小例子,来个逼真感觉下Web有用中环绕"七剑"都有哪些部件可用。

你通过从书的数量和开发周期及运行速度来证明:net网页编程和ruby要比java简单。
乐观 该用户已被删除
沙发
发表于 2015-1-21 09:51:13 | 只看该作者
任职于太阳微系统的詹姆斯·高斯林等人于1990年代初开发Java语言的雏形,最初被命名为Oak,目标设置在家用电器等小型系统的程序语言
精灵巫婆 该用户已被删除
板凳
发表于 2015-1-29 14:13:47 | 只看该作者
J2SE开发桌面应用软件比起 VC,VB,DEPHI这些传统开发语言来说,优势好象并不明显。J2ME对于初学者来说,好象又有点深奥,而且一般开发者很难有开发环境。
愤怒的大鸟 该用户已被删除
地板
发表于 2015-2-4 01:42:29 | 只看该作者
你就该学一学Servlet了。Servlet就是服务器端小程序,他负责生成发送给客户端的HTML文件。JSP在执行时,也是先转换成Servlet再运行的。虽说JSP理论上可以完全取代Servlet,这也是SUN推出JSP的本意,可是Servlet用来控制流程跳转还是挺方便的,也令程序更清晰。接下来你应该学习一下Javabean了,可能你早就看不管JSP在HTML中嵌Java代码的混乱方式了,这种方式跟ASP又有什么区别呢?
山那边是海 该用户已被删除
5#
发表于 2015-2-6 15:31:30 | 只看该作者
我大二,Java也只学了一年,觉得还是看thinking in java好,有能力的话看英文原版(中文版翻的不怎么好),还能提高英文文档阅读能力。
深爱那片海 该用户已被删除
6#
发表于 2015-2-7 13:54:39 | 只看该作者
是一种使网页(Web Page)由静态(Static)转变为动态(Dynamic)的语言
简单生活 该用户已被删除
7#
发表于 2015-2-13 09:03:16 | 只看该作者
关于设计模式的资料,还是向大家推荐banq的网站 [url]http://www.jdon.com/[/url],他把GOF的23种模式以通俗易懂的方式诠释出来,纯Java描述,真是经典中的经典。
因胸联盟 该用户已被删除
8#
发表于 2015-3-1 21:07:58 | 只看该作者
让你能够真正掌握接口或抽象类的应用,从而在原来的Java语言基础上跃进一步,更重要的是,设计模式反复向你强调一个宗旨:要让你的程序尽可能的可重用。
若天明 该用户已被删除
9#
发表于 2015-3-6 19:36:30 | 只看该作者
任职于太阳微系统的詹姆斯·高斯林等人于1990年代初开发Java语言的雏形,最初被命名为Oak,目标设置在家用电器等小型系统的程序语言
活着的死人 该用户已被删除
10#
发表于 2015-3-13 07:07:11 | 只看该作者
是一种突破用户端机器环境和CPU
再现理想 该用户已被删除
11#
发表于 2015-3-20 15:34:10 | 只看该作者
学Java必读的两个开源程序就是Jive和Pet Store.。 Jive是国外一个非常著名的BBS程序,完全开放源码。论坛的设计采用了很多先进的技术,如Cache、用户认证、Filter、XML等,而且论坛完全屏蔽了对数据库的访问,可以很轻易的在不同数据库中移植。论坛还有方便的安装和管理程序,这是我们平时编程时容易忽略的一部份(中国程序员一般只注重编程的技术含量,却完全不考虑用户的感受,这就是我们与国外软件的差距所在)。
爱飞 该用户已被删除
12#
发表于 2015-3-21 23:51:09 | 只看该作者
是一种使用者不需花费很多时间学习的语言
谁可相欹 该用户已被删除
13#
发表于 2015-3-27 08:10:31 | 只看该作者
还好,SUN提供了Javabean可以把你的JSP中的 Java代码封装起来,便于调用也便于重用。
透明 该用户已被删除
14#
 楼主| 发表于 2015-4-1 07:10:41 | 只看该作者
是一种简化的C++语言 是一种安全的语言,具有阻绝计算机病毒传输的功能
只想知道 该用户已被删除
15#
发表于 2015-4-1 15:10:14 | 只看该作者
Java自面世后就非常流行,发展迅速,对C++语言形成了有力冲击。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人PC、数据中心、游戏控制台
金色的骷髅 该用户已被删除
16#
发表于 2015-4-14 10:41:17 | 只看该作者
是一种将安全性(Security)列为第一优先考虑的语言
第二个灵魂 该用户已被删除
17#
发表于 2015-4-16 13:30:06 | 只看该作者
吧,现在很流行的Structs就是它的一种实现方式,不过Structs用起来实在是很繁,我们只要学习其精髓即可,我们完全可以设计自己的MVC结构。然后你再研究一下软件Refactoring (重构)和极限XP编程,相信你又会上一个台阶。 做完这些,你不如整理一下你的Java代码,把那些经典的程序和常见的应用整理出来,再精心打造一番,提高其重用性和可扩展性。你再找几个志同道合的朋友成立一个工作室吧
小妖女 该用户已被删除
18#
发表于 2015-4-21 10:40:22 | 只看该作者
你一定会高兴地说,哈哈,原来成为Java高手就这么简单啊!记得Tomjava也曾碰到过一个项目经理,号称Java很简单,只要三个月就可以学会。
冷月葬花魂 该用户已被删除
19#
发表于 2015-4-25 03:59:45 | 只看该作者
Java是一种计算机编程语言,拥有跨平台、面向对java
小女巫 该用户已被删除
20#
发表于 2015-5-6 01:03:49 | 只看该作者
多重继承(以接口取代)等特性,增加了垃圾回收器功能用于回收不再被引用的对象所占据的内存空间,使得程序员不用再为内存管理而担忧。在 Java 1.5 版本中,Java 又引入了泛型编程(Generic Programming)、类型安全的枚举、不定长参数和自动装/拆箱等语言特性。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2024-5-18 23:20

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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