`
srj2903
  • 浏览: 107170 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

acegi 源码学习之用户登录篇

阅读更多

一、查看 applicationContext-acegi-security.xml 配置文件,涉及到登录的配置为:

 1

< bean id = "authenticationProcessingFilter" class = "org.javajohn.test.plugins.security.UserAuthenticationProcessingFilter" >

        < property name = "authenticationManager" ref = "authenticationManager" />

        < property name = "authenticationFailureUrl" >

            < value > /login.jsp?login_error=1 </ value >

        </ property >

        < property name = "defaultTargetUrl" >

            < value > /index.jsp </ value >

        </ property >

        < property name = "filterProcessesUrl" >

            < value > /j_acegi_security_check </ value >

        </ property >

        < property name = "userManager" ref = "userManager" />

        < property name = "rememberMeServices" ref = "rememberMeServices" />

        < property name = "exceptionMappings" >

            < value >

                org.acegisecurity.AuthenticationException=/login.jsp?login_error=user_psw_error

                org.acegisecurity.concurrent.ConcurrentLoginException=/login.jsp?login_error=too_many_user_error

             </ value >

        </ property >

</ bean >

 

 

2 < bean id = "authenticationManager"

       class = "org.acegisecurity.providers.ProviderManager" >

       < property name = "providers" >

           < list >

              < ref local = "daoAuthenticationProvider" />

              < bean class = "org.acegisecurity.providers.anonymous.AnonymousAuthenticationProvider" >

                  < property name = "key" value = "javajohnKey" />

              </ bean >

              < bean class = "org.acegisecurity.providers.rememberme.RememberMeAuthenticationProvider" >

                  < property name = "key" value = "javajohnKey" />

              </ bean >

           </ list >

       </ property >   

    </ bean >

 

3

< bean id = "daoAuthenticationProvider" class = "org.acegisecurity.providers.dao.DaoAuthenticationProvider" >

       < property name = "userDetailsService" ref = "jdbcDaoImpl" />

       < property name = "userCache" >

           < bean class = "org.acegisecurity.providers.dao.cache.EhCacheBasedUserCache" >

              < property name = "cache" >

                  < bean class = "org.springframework.cache.ehcache.EhCacheFactoryBean" >

                     < property name = "cacheManager" >

                         < bean class = "org.springframework.cache.ehcache.EhCacheManagerFactoryBean" />

                     </ property >

                     < property name = "cacheName" value = "userCache" />

                  </ bean >

              </ property >

           </ bean >

       </ property >

       < property name = "passwordEncoder" ref = "passwordEncoder" />

    </ bean >

 

 

4 < bean id = "jdbcDaoImpl"

          class = "org.acegisecurity.userdetails.jdbc.JdbcDaoImpl" >

        < property name = "dataSource" ref = "dataSource" />

        < property name = "usersByUsernameQuery" >

            < value >

                select loginid,passwd,1 from users where status='1' and loginid = ?

            </ value >

        </ property >

        < property name = "authoritiesByUsernameQuery" >

            < value >

                select u.loginid,p.name from

                users u,roles r,permissions p,user_role ur,role_permis rp

                where

                u.id=ur.user_id and <span style=

分享到:
评论

相关推荐

    acegi-security源码包

    总的来说,Acegi Security的源码包为学习和定制安全组件提供了一个宝贵的资源。通过对源码的分析,开发者可以更深入地了解安全设计模式,提高应用的安全性和可靠性。同时,这也是一个提升Java和Spring框架技能的好...

    使用acegi控制用户权限实例

    为了进一步学习和实践Acegi Security,你可以研究这些文件,了解如何在实际项目中集成和配置Acegi。 总之,Acegi Security为Spring应用程序提供了一套强大的安全框架,通过精细的控制权衡了用户认证和授权。虽然已...

    acegi源码解读.txtacegi源码解读.txtacegi源码解读.txt

    ### acegi源码解读:深度剖析Spring Security核心组件 #### 引言 在现代Web应用开发中,安全性是至关重要的一个方面。Spring Security作为Spring框架的一部分,提供了强大的安全功能,包括认证、授权、会话管理等...

    acegi

    - **AuthenticationManager**:处理用户的登录请求,负责身份验证。 - **AccessDecisionManager**:决定用户是否有权访问特定的资源。 - **SecurityContextHolder**:存储当前线程的安全上下文,包含了用户的身份...

    acegi pdf 学习

    由于文章内容是关于acegi pdf学习的参考文档,其中包含了大量关于Acegi安全系统的技术细节,因此以下将详细阐述文档中提及的关键知识点。 首先,Acegi安全系统是一个基于Spring框架的安全解决方案。文档开头简要...

    Acegi学习笔记(JAVA系统安全编程时用到)

    在 `acegi-config.xml` 文件中,你可以定义认证和授权策略,比如用户存储(UserDetailsService)、认证管理器(AuthenticationManager)和权限访问决策器(AccessDecisionManager)。 Acegi 还提供了许多预定义的...

    Acegi例子代码+一个很好的学习Acegi的网址

    4. **过滤器安全链(Filter Security Interceptor)**:Acegi的核心组件之一,它是一个Spring MVC的过滤器,会在请求被处理之前检查用户的权限。如果用户没有足够的权限,过滤器将阻止请求的进一步处理。 5. **频道...

    Acegi-spring安全框架

    然而,尽管Acegi非常强大,它也有不足之处,如学习曲线较陡峭,配置复杂,对于初学者来说可能较为困难。此外,随着Spring Security的发展,Acegi的一些功能可能已经被更新的版本替代或优化,因此在使用时需要考虑其...

    Acegi框架介绍 acegi安全与认证

    例如,所有用户可以访问登录页面,而只有特定用户可以访问特定的管理页面。这种控制方式使得系统能够灵活地管理不同级别的用户访问权限。 2. **业务类方法的访问控制** 在Spring容器中的Bean方法,Acegi都能进行...

    acegi rememberMe和匿名登录

    Acegi Security提供了这种便利性,通过在用户登录时创建一种持久化的身份验证令牌,存储在用户的浏览器cookie中。当用户下次访问网站时,如果携带了这个令牌,系统会自动识别并完成登录过程,提升用户体验。 实现...

    acegi学习整理合集

    - Spring - Java - JavaEye论坛.mht"则可能专注于Acegi的认证过程,这包括用户登录、密码加密、以及不同类型的认证机制,如基于内存的认证、JDBC认证等。认证是确保用户身份的关键步骤,Acegi提供了灵活且可扩展的...

    Spring源代码解析(十):Spring_Acegi框架授权的实现.doc

    在Spring框架中,Acegi(现在已经并入Spring Security)是一个强大的安全管理组件,它提供了认证和授权功能。在本文中,我们将深入探讨Spring_Acegi框架如何实现授权机制,特别是通过`FilterSecurityInterceptor`来...

    Acegi学习笔记--Acegi详解实战Acegi实例

    通过学习Acegi,我们可以了解到Web应用安全的基本思路和实践方法,这对于理解现代的Spring Security框架非常有帮助。虽然Acegi已经不再更新,但它的理念和架构仍对现代安全框架设计产生深远影响。

    基于java的ACEGI

    AceGI,全称为Acegi ...理解Acegi对于学习和使用Spring Security仍然大有裨益,因为它可以帮助我们更好地理解Web应用程序的安全设计和实现。在实际开发中,掌握Acegi的相关知识可以提升我们构建安全系统的专业能力。

    ACEGI

    **认证(Authentication)**是验证用户身份的过程,Acegi Security支持多种认证机制,包括: 1. **HTTP基本认证**:基于IETF RFC标准,通过HTTP头部传递用户名和密码。 2. **HTTP摘要认证**:同样基于IETF RFC标准...

    Spring Acegi权限控制

    此外,Acegi还提供了Remember Me服务,允许用户在一段时间内无须重新登录,提高了用户体验。这个功能可以通过配置`RememberMeAuthenticationProvider`来实现。 总的来说,Spring Acegi Security提供了一套全面的Web...

    spring acegi 详细文档

    首先,Acegi的主要目标是保护Spring应用免受非法访问,它提供了丰富的功能来实现用户认证、会话管理、权限控制以及安全相关的异常处理。Acegi的核心组件包括`AuthenticationManager`、`AccessDecisionManager`和`...

    acegi rememberMe和退出

    2. 配置RememberMeFilter:同样在Spring配置文件中,你需要添加RememberMeAuthenticationFilter,确保它位于AuthenticationProcessingFilter之后,这样在用户登录时,Remember Me功能才能生效。 3. 配置...

    acegi实现用户权限

    标题中的“acegi实现用户权限”指的是在Java Web开发中使用Acegi Security框架进行权限管理的技术。Acegi Security是Spring框架的一个扩展,它提供了一套完整的安全解决方案,用于控制应用程序的访问权限。在这个...

Global site tag (gtag.js) - Google Analytics