Acegi 安全框架 1.0.4 版发布与社区讨论

  • 陈俊

2007 年 5 月 29 日

话题:Java安全语言 & 开发架构

Acegi 1.04 正式版已于 5 月 25 日发布,该版中修正了前一版中许多令人困扰缺陷,如常见的登出时空指针异常、不同身份用户间切换失败、RememberMe 失效以及 ConcurrentSession 与 RememberMe 冲突等问题已得到合理的解决,同时也有不少令人感到高兴的改进。

Acegi是为 Java 企业级安全应用而提供的一个灵活、强大而成熟的安全认证框架(尤其针对基于 Spring Framework 上的应用)。Acegi 提供了全面的认证、授权、对象访问控制、单点登陆、以及智能识别等安全控制功能,能解决各种复杂的企业安全需求。通过对过滤器与 AOP 的合理使用,能让你的应用实现无入侵式的权限管理。

Acegi 的下一个版本是 2.0.0M1 版,你可在 Acegi 的 SVN 中获取官方最新的源代码,并查看它的开发进度与日后发展方向。当你查阅 Acegi文档后,仍遇到问题时,可到 Spring 官方论坛的Acegi 版块亲自向 Ben Alax(Acegi 发起人,Interface21 成员) 提问,他是一个很热心回答问题的人。

安全控制在任何系统中都是必不可少的,因此一直以来,国内技术社区对 Acegi 的研究与应用也颇为广泛。

JavaeyeAcegi 专栏中就有多篇很值得关注的文章,其中包括了不少学习心得,以及实际应用 Acegi 到项目中的经验之谈。其中王政在Acegi 资源配置动态扩展实现文章中提及了如何扩展 Acegi 以更好地适应实际项目的需要:

在使用 Acegi Security Framework 的过程中,如果细心的话,会发现其资源和角色配置是在配置文件中的……

上面的配置从功能上实现了资源与角色的映射,但用户可能会提出在运行期动态改变权限分配的需求,配置文件策略可能略显不足,下面我将提供一种基于数据库的策略解决此问题……

 罗时飞近期出版的《敏捷 Acegi、CAS:构建安全的 Java 系统》一书,基本上囊括了 Acegi 涉及的内容,可见作者确曾在 Acegi 的研究上下过一番苦工:
全书共分为 4 部分:第 1 部分介绍 Web 应用安全,主要围绕 Java EE 安全性编程模型、从宏观上看待 Acegi 及其初步使用等方面进行阐述;第 2 部分介绍 Acegi 认证支持,主要围绕 Acegi 支持的各种认证机制、各种认证提供者、各种企业级特性等内容展开论述,还重点介绍了 Acegi 内置的 Captcha 集成支持、Java EE 容器适配器支持等;第 3 部分介绍 Acegi 授权支持,主要围绕 Web 资源、业务方法、领域对象的授权操作展开论述;第 4 部分介绍 CAS 3 认证支持,它主要从 CAS 3 服务器的使用及其内部架构角度给出论述。

除此外,《Spring in Action 中文版》也是不错的参考资料,其第 11 章重点讲述了 Acegi 中几个主要部分:安全拦截器、认证管理器、访问决策管理器、保护 Web 应用程序和保护方法调用等。

如果你并不想投入太多的精力学习 Acegi,而想得到立即能集成到实际项目中的权限管理模块的话,那SpringSide完整扩展实例会是个不错的选择:

SpringSide 的 Acegi 扩展应用实例在 SpringSide 目录下的 sandbox\security。该实例提供了完整而简洁的应用管理界面,应用示范,你可以在这基础进行自己管理系统的扩展。也可以在这基础上直接使用……

你可通过 SVN 获取源代码,并且集成过程中所遇到的大部分问题,都可在其相关文档论坛中找到相关答案。

Java安全语言 & 开发架构