论坛首页 Java企业应用论坛

Spring Security-2.0入门教程(基础篇)

浏览 14478 次
精华帖 (0) :: 良好帖 (1) :: 新手帖 (0) :: 隐藏帖 (7)
作者 正文
   发表时间:2009-06-04   最后修改:2009-09-21

欢迎阅读咱们写的Spring Security教程,咱们既不想写一个简单的入门教程,也不想翻译已有的国外教程。咱们这个教程就是建立在咱们自己做的OA的基础上,一点一滴总结出来的经验和教训。

首先必须一提的是,Spring Security出身名门,它是Spring的一个子项目http://static.springsource.org/spring-security/site/index.html。它之前有个很响亮的名字Acegi。这个原本坐落在sf.net上的项目,后来终于因为跟spring的紧密连接,在2.0时成为了Spring的一个子项目。

即 使是在开源泛滥的Java领域,统一权限管理框架依然是稀缺的,这也是为什么Spring Security(Acegi)已出现就受到热捧的原因,据俺 们所知,直到现在也只看到apache社区的jsecurity在做同样的事情。(据小道消息,jsecurity还很稚嫩。)

Spring Security(Acegi)支持一大堆的权限功能,然后它又和Spring这个当今超流行的框架整合的很紧密,所以我们选择它。实际上自从Acegi时代它就很有名了。

目前我们编写了四章用于Spring Security入门的文档,基本上可以带新手从头开始使用Spring Security了。

    1. 一个简单的HelloWorld
        1.1. 配置过滤器
        1.2. 使用命名空间
        1.3. 完善整个项目
        1.4. 运行示例
    2. 使用数据库保存权限信息
        2.1. 修改配置文件
        2.2. 数据库表结构
    3. 自定义数据库表结构
        3.1. 自定义表结构
        3.2. 初始化数据
        3.3. 配置Spring Security
            3.3.1. 处理用户登陆
            3.3.2. 检验用户权限
    4. 自定义登陆页面
        4.1. 实现自定义登陆页面
        4.2. 修改配置文件
        4.3. 登陆页面中的参数配置
        4.4. 测试一下

教程在线浏览地址:http://www.family168.com/oa/springsecurity/html/index.html

 

我们这四部分。

 

第一部分,怎么用最小配置完成一个Spring Security项目。

第二部分,如果使用数据库保存用户权限信息,该怎么配置。

第三部分,如果不想用默认的数据库结构,怎么适配已有的表结构。

第四部分,大家肯定嫌默认的登录页面太丑,这个时候怎么用自己制作的登录页面替换默认页面。

 

 

看了这四部分,基本上一个权限管理的东西就可以配置起来了。剩下的东西除了md5加密以外,似乎都没有太常用的了。自己想要修改验证体系除外,那个太复杂了,等于把Spring Security原本的东西颠覆了。本来Spring Security现在对扩展也不是很友好。平白让原本十分简洁的namespace变得臃肿不堪。

 

然后我的问题就是,现在写的这几个章节还有哪些遗漏,哪些功能是常用的,但是我们又没有讲到的,如果没啥问题的话,下一步我就要开始写web篇了,详细研究一下Spring Security里支持的web安全机制。Thx。

   发表时间:2009-06-05  
看了,非常详细,后面的内容加油呀,精彩在后面.
0 请登录后投票
   发表时间:2009-06-05  
仅 3. 自定义数据库表结构是不够的,
还需 自定义 login service,因为登录时要同时加载很多用户信息到session
0 请登录后投票
   发表时间:2009-06-05  
晕 还没写完啊
0 请登录后投票
   发表时间:2009-06-05   最后修改:2009-06-10
byk 写道
仅 3. 自定义数据库表结构是不够的,
还需 自定义 login service,因为登录时要同时加载很多用户信息到session

user-service会自动把加载的数据缓存到系统中,注意不是加载到session里,每个session里只放当前登陆的用户信息。

也许我会错意了,是不是希望扩展Spring Security内User的功能,希望在登陆之后把一些用户相关的信息保存到session里?这也没必要改写登陆用的filter,官方的答案是监听登陆成功事件,再去操作session
0 请登录后投票
   发表时间:2009-09-21  
打不开!抗议!
0 请登录后投票
   发表时间:2009-09-21  
链接有问题啊
0 请登录后投票
   发表时间:2009-10-21  
很好很强大啊,THX了
0 请登录后投票
   发表时间:2009-10-22  
是否有电子书类型的?有时候没办法上网啊。
谢谢了
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics