![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Acegi
ageofnodoubt
这个作者很懒,什么都没留下…
展开
-
菜鸟-手把手教你把Acegi应用到实际项目中(1.1)
相信不少朋友们对于学习Acegi的过程是比较痛苦的,而且可能最初一个例子都没能真正运行起来。即使能运行起来,对于里面那么多的配置,更搞不清楚为什么要那么配,多配一个和少配一个究竟有什么区别? 最终头都大了^_^基于各方面的原因,本人决定写一系列关于Acegi从简单到复杂应用的文章,一方面是对自己学习Acegi的总结,而另一方面又对想学习研究Acegi的朋友们有所帮助。关于Acegi的介绍,网上...2008-10-16 02:13:21 · 96 阅读 · 0 评论 -
菜鸟-手把手教你把Acegi应用到实际项目中(11)-切换用户
在某些应用场合中,我们可能需要用到切换用户的功能,从而以另一用户的身份进行相关操作。这一点类似于在Linux系统中,用su命令切换到另一用户进行相关操作。 既然实际应用中有这种场合,那么我们就有必要对其进行研究,以求在需要时把它加入到应用中。那么,接下来我们就来研究下如何在Acegi中实现切换用户的功能。 一般来说,切换用户功能是从高级用户切换到普通用户,从而以普...2008-11-15 23:48:37 · 81 阅读 · 0 评论 -
菜鸟-手把手教你把Acegi应用到实际项目中(10)-保护业务方法
前面已经讲过关于保护Web资源的方式,其中包括直接在XML文件中配置和自定义实现FilterInvocationDefinitionSource接口两种方式。在实际企业应用中,保护Web资源显得非常重要,它是保障Web应用安全性的关键部分。有了它,我们的Web应用就显得更加安全了。的确,部分Web应用有了它已经足够了。但许多时候却有这样的场景,某企业的系统允许用户A查看数据,但不允许他...2008-11-09 00:35:25 · 123 阅读 · 0 评论 -
菜鸟-教你把Acegi应用到实际项目(9)-实现FilterInvocationDefinition
在实际应用中,开发者有时需要将Web资源授权信息(角色与授权资源之间的定义)存放在RDBMS中,以便更好的管理。事实上,我觉得一般的企业应用都应当如此,因为这样可以使角色和Web资源的管理更灵活,更自由。那么,我们应当如何实现这个需求呢?在接下来的内容当中,我们将一一解说。 我们都知道,一般Web资源授权信息的配置类似如下代码:<bean id="filterInvo...2008-11-02 11:34:01 · 121 阅读 · 0 评论 -
菜鸟-手把手教你把Acegi应用到实际项目中(8)-扩展UserDetailsService接口
一个能为DaoAuthenticationProvider提供存取认证库的的类,它必须要实现UserDetailsService接口:public UserDetails loadUserByUsername(String username) throws UsernameNotFoundException, DataAccessException; UserDet...2008-10-29 13:04:42 · 248 阅读 · 0 评论 -
菜鸟-手把手教你把Acegi应用到实际项目中(7)-缓存用户信息
首先讲讲EhCache。在默认情况下,即在用户未提供自身配置文件ehcache.xml或ehcache-failsafe.xml时,EhCache会依据其自身Jar存档包含的ehcache-failsafe.xml文件所定制的策略来管理缓存。如果用户在classpath下提供了ehcache.xml或ehcache-failsafe.xml文件,那么EhCache将会应用这个文件。如果...2008-10-28 21:52:50 · 87 阅读 · 0 评论 -
菜鸟-手把手教你把Acegi应用到实际项目中(6)
在企业应用中,用户的用户名、密码和角色等信息一般存放在RDBMS(关系数据库)中。前面几节我们采用的是InMemoryDaoImpl,即基于内存的存放方式。这节我们将采用RDBMS存储用户信息。 UserDetailsService的接口实现有JdbcDaoImpl和InMemoryDaoImpl。JdbcDaoImpl通过数据库获取用户名、密码和角色信...2008-10-26 22:51:23 · 78 阅读 · 0 评论 -
菜鸟-手把手教你把Acegi应用到实际项目中(5)
在实际企业应用中,用户密码一般都会进行加密处理,这样才能使企业应用更加安全。既然密码的加密如此之重要,那么Acegi(Spring Security)作为成熟的安全框架,当然也我们提供了相应的处理方式。 针对用户密码的加密工作,DaoAuthenticationProvider同时暴露了passwordEncoder和saltSource属性。PasswordEncoder和S...2008-10-25 22:00:49 · 91 阅读 · 0 评论 -
菜鸟-手把手教你把Acegi应用到实际项目中(4)
今天就讲个ConcurrentSessionFilter。在Acegi 1.x版本中,控制并发HttpSession和Remember-Me认证服务不能够同时启用,它们之间存在冲突问题,这是该版本的一个Bug,希望他们尽快改进!!关于这方面的资料,网上很多有说,不明白的朋友可以去了解了解。 在一些应用场合,企业可能需要限制同一帐号在同一时间登录到同一Web应用的次数,即控制并发Htt...2008-10-23 22:27:47 · 79 阅读 · 0 评论 -
菜鸟-手把手教你把Acegi应用到实际项目中(3)
这一节我们将要了解的是AnonymousProcessingFilter、RememberMeProcessingFilter和LogoutFilter三个过滤器。 1、AnonymousProcessingFilter 在大部分企业应用中,存在许多不需要用户登录就可以访问的资源,比如登录页面、退出页面、主页等。鉴于此,Acegi提供了匿名认证服务。这样能够使所有...2008-10-20 23:04:17 · 97 阅读 · 0 评论 -
菜鸟-手把手教你把Acegi应用到实际项目中(2)
上一篇是基于BasicProcessingFilter的基本认证,这篇我们改用AuthenticationProcessingFilter基于表单的认证方式。 1、authenticationProcessingFilter 处理认证请求(通常是一个登录页面的表单请求)。当身份验证成功时,AuthenticationProcessingFilter会在会话中放置一个...2008-10-16 23:16:36 · 186 阅读 · 0 评论 -
菜鸟-手把手教你把Acegi应用到实际项目中(1.2)
7) daoAuthenticationProvider 进行简单的基于数据库的身份验证。DaoAuthenticationProvider获取数据库中的账号密码并进行匹配,若成功则在通过用户身份的同时返回一个包含授权信息的Authentication对象,否则身份验证失败,抛出一个AuthenticatiionException。 <bean id="daoAuthenticat...2008-10-16 02:20:28 · 86 阅读 · 0 评论 -
菜鸟-手把手教你把Acegi应用到实际项目中(12)-Run-As认证服务
有这样一些场合,系统用户必须以其他角色身份去操作某些资源。例如,用户A要访问资源B,而用户A拥有的角色为AUTH_USER,资源B访问的角色必须为AUTH_RUN_AS_DATE,那么此时就必须使用户A拥有角色AUTH_RUN_AS_DATE才能访问资源B。尽管这种场合相对较少,但存在即合理,总会有需要的时候,要学会未雨绸缪。 为了实现这一需求,Acegi为我们提供了Run-...2008-11-25 18:00:03 · 71 阅读 · 0 评论