读书人

Spring Security学习札记

发布时间: 2012-09-20 09:36:50 作者: rapoo

Spring Security学习笔记

????? 看了一个星期的Spring Security源码,应该说对控制URL级别的访问控制的认识是有80,90%了,这里把自己的一些记录给贴出来,分享是一方面,保存也是一方面。好了不说了,看下面具体分析了:

URL资源控制访问处理流程:

第一步:用户登录的时候根据用户名从数据库中查出用户所具有的GrantedAuthority[]信息,将它复制给Authentication对象(Authentication中有一个GrantedAuthority[]的属性),权限信息都封装成了GrantedAuthorityImpl的对象。


Spring Security学习札记
?


Spring Security学习札记
?
?
Spring Security学习札记
?

?第二步:从数据库中查出资源与权限的对应信息,以map的形式保存,比如像这样:
Spring Security学习札记
?

Creates aConfigAttributeDefinition containing a single attribute

??????????? setValue(new ConfigAttributeDefinition(StringUtils.commaDelimitedListToStringArray(s)));


?
Spring Security学习札记


?
Spring Security学习札记

Authenticationauthenticated=authenticateIfRequired(),对于认证对象的获得这里就不再复述了文档中已经分析了。

现在Authentication和ConfigAttributeDefinition都已经准备好了,就可以进行决定是否可以访问了,这叫个AccessDecisionManager进行处理。


Spring Security学习札记
?
Spring Security学习札记
?
Spring Security学习札记

感谢楼主,最近也想找本书 下载到 psp 里面,看,,正好啊

不错 不错,顶 9 楼 天下智能 2011-01-27 最近做项目也用到了Spring Security,好好学习一下,自己一个人做! 10 楼 zjut_ww 2011-03-03 kongruxi 写道写得不错
之前的一个很小的项目里面用到spring security
如果LZ早写这文章就可以减少点我用在学习spring security的时间了,呵呵

因为我这个小项目权限那块用的是User<-->Role<-->Authority,所以spring security实际上只会关心User拥有什么Authority,反而没有Role这个概念,这样理解应该没错吧?
不知spring security是不是认为大多数系统只会用到User<-->Role这样的结构,所以权限的控制判断默认是ROLE_XXX这样,个人觉得看起来很怪

其实spring security中的role就是你口中的authority。完全可以符合你的三层的权限控制结构

读书人网 >软件架构设计

热点推荐