读书人

Spring ACEGI的根本实现原理

发布时间: 2012-09-13 09:51:53 作者: rapoo

Spring ACEGI的基本实现原理

Spring ACEGI 作为Spring丰富生态系统中的一个非常典型的应用,安全框架Spring ACEGI的使用是非常普遍的。尽管它不属于Spring平台的范围,但由于它建立在Spring的基础上,因此可以方便地与Spring应用集成,从而 方便的为基于Spring的应用提供安全服务。 作为一个完整的Java EE安全应用解决方案,ACEGI能够为基于Spring构建的应用项目,提供全面的安全服务,它可以处理应用需要的各种典型的安全需求;例如,用户的身 份验证、用户授权,等等。ACEGI因为其优秀的实现,而被Spring开发团队推荐作为Spring应用的通用安全框架,随着Spring的广泛传播而 被广泛应用。在各种有关Spring的书籍,文档和应用项目中,都可以看到它活跃的身影。 Spring ACEGI的基本实现 关于ACEGI的基本设置,在这里就不多嗦了。我们关心的是ACEGI是怎样实现用户的安全需求的,比如最基本的用户验证,授权的工作原理和实现。 在ACEGI配置中,是通过AuthenticationProcessingFilter的过滤功能来启动Web页面的用户验证实现的。 AuthenticationProcessingFilter过滤器的基类是AbstractProcessingFilter,在这个 AbstractProcessingFilter的实现中,可以看到验证过程的实现模板,在这个实现模板中,可以看到它定义了实现验证的基本过程,如以 下代码所示:

Java代码

???????????????????}可以看到,在ACEGI的框架实现中,应用的安全需求管理,主要是由过滤器、验证器、用户数据提供器、授权器、投票器,这几个基本模块的协作一起完成的。 这几个基本模块的关系,刻画出了ACEGI内部架构的基本情况,也是我们基于ACEGI实现Spring安全应用,需要重点关注的地方。

?