`
jacally
  • 浏览: 769757 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

CAS 单点登录安装笔记3 -- 与acegi集成

    博客分类:
  • JAVA
阅读更多
CAS 单点登录安装笔记3
-- 与acegi集成

在我的项目中应用了acigi安全框架,以下是结合yale cas单点登录系统进行的相关配置

 <!-- =========  Acegi as a CAS Client的配置============= --> 
	<bean id="authenticationProcessingFilter"
		class="org.acegisecurity.ui.cas.CasProcessingFilter">
		<property name="authenticationManager"
			ref="authenticationManager" />
		<property name="authenticationFailureUrl"
			value="/login.do?login_error=1" />
		<property name="defaultTargetUrl" value="/main.do" />
		
        <property name="filterProcessesUrl">
            <value>/j_acegi_cas_security_check</value>
        </property>		

		<property name="rememberMeServices" ref="rememberMeServices" />
		<property name="exceptionMappings">
            <value>
				org.acegisecurity.AuthenticationServiceException=/login.do?login_error=user_not_found_error
				org.acegisecurity.BadCredentialsException=/login.do?login_error=user_psw_error
				org.acegisecurity.concurrent.ConcurrentLoginException=/login.do?login_error=too_many_user_error
				org.acegisecurity.DisabledException=/login.do?login_error=disabled_user_error
            </value>
        </property> 		
	</bean>	
	 
    <bean id="exceptionTranslationFilter" class="org.acegisecurity.ui.ExceptionTranslationFilter">
        <property name="authenticationEntryPoint">
            <ref local="casProcessingFilterEntryPoint"/>
        </property>
		<property name="accessDeniedHandler">
			<bean
				class="org.acegisecurity.ui.AccessDeniedHandlerImpl">
				<property name="errorPage"
					value="/errors/accessDenied.jsp" />
			</bean>
		</property>        
    </bean>
    
   <!-- cas config -->
    <bean id="casProcessingFilterEntryPoint" class="org.acegisecurity.ui.cas.CasProcessingFilterEntryPoint">
        <property name="loginUrl"><value>https://sso.gzps.net:8443/cas/login</value></property>
        <property name="serviceProperties"><ref local="serviceProperties"/></property>
    </bean>
    
    <bean id="authenticationManager" class="org.acegisecurity.providers.ProviderManager">
        <property name="providers">
            <list>
                <ref local="casAuthenticationProvider"/>
            </list>
        </property>
    </bean>
    
    <bean id="casAuthenticationProvider" class="org.acegisecurity.providers.cas.CasAuthenticationProvider">
        <property name="casAuthoritiesPopulator"><ref bean="casAuthoritiesPopulator"/></property>
        <property name="casProxyDecider"><ref local="casProxyDecider"/></property>
        <property name="ticketValidator"><ref local="casProxyTicketValidator"/></property>
        <property name="statelessTicketCache"><ref local="statelessTicketCache"/></property>
        <property name="key"><value>my_password_for_this_auth_provider_only</value></property>
    </bean>
    <bean id="casProxyTicketValidator" class="org.acegisecurity.providers.cas.ticketvalidator.CasProxyTicketValidator">
        <property name="casValidate"><value>https://sso.gzps.net:8443/cas/proxyValidate</value></property>
        <property name="serviceProperties"><ref local="serviceProperties"/></property>
    </bean>
    <!-- 
    <bean id="casProxyDecider" class="org.acegisecurity.providers.cas.proxy.AcceptAnyCasProxy" />
    -->
    <bean id="casProxyDecider" class="org.acegisecurity.providers.cas.proxy.RejectProxyTickets" />
    
    <bean id="serviceProperties" class="org.acegisecurity.ui.cas.ServiceProperties">
        <property name="service">
            <value>http://localhost:8080/aio/j_acegi_cas_security_check</value>
        </property>
        <property name="sendRenew">
            <value>false</value>
        </property>
    </bean>
    
    <bean id="statelessTicketCache" class="org.acegisecurity.providers.cas.cache.EhCacheBasedTicketCache">
        <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>
    
    <bean id="casAuthoritiesPopulator" class="org.acegisecurity.providers.cas.populator.DaoCasAuthoritiesPopulator">
        <property name="userDetailsService"><ref local="userDetailsService"/></property>
    </bean>

    <bean id="casProcessingFilter" class="org.acegisecurity.ui.cas.CasProcessingFilter">
        <property name="authenticationManager"><ref local="authenticationManager"/></property>
        <property name="authenticationFailureUrl"><value>/casfailed.jsp</value></property>
        <property name="defaultTargetUrl"><value>/</value></property>
        <property name="filterProcessesUrl"><value>/j_acegi_cas_security_check</value></property>
    </bean>
    
    
    <!-- ======================================================= -->

分享到:
评论
1 楼 xutianle 2009-02-17  
谢谢了,学习中!

相关推荐

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

    3. **登录与登出**:自定义登录页面,使用`AuthenticationProcessingFilter`处理登录请求,`LogoutFilter`处理登出请求。 4. **异常处理**:配置全局的`ExceptionTranslationFilter`来捕获安全相关的异常,并重定向...

    acegisecurity内所有jar包

    包含acegi-security-1.0.7.jar,acegi-security-1.0.7-sources.jar,acegi-security-cas-1.0.7.jar,acegi-security-cas-1.0.7-sources.jar,acegi-security-catalina-1.0.7.jar,acegi-security-catalina-1.0.7-...

    acegi-security-cas-1.0.7.jar

    Acegi是一个专门为SpringFramework提供安全机制的项目,全称为Acegi Security System for Spring.

    ldap与Acegi? ----Acegi配置文件解剖

    这篇博客将深入解析一个配置了Acegi Security的`applicationContext-acegi-security.xml`文件,帮助我们理解如何将LDAP与Acegi集成以实现更安全的Web应用。 **LDAP基础** LDAP是一种标准的网络协议,用于存储和...

    Acegi Security整合CAS实例

    这一步骤是实现CAS与Acegi Security整合的关键,通过定义bean来指定用户认证的具体策略,如使用数据库认证、LDAP认证或其他自定义认证方式。 ### 总结 Acegi Security与CAS的整合,不仅能够简化多应用间的用户登录...

    acegi-security-tiger-1.0.0-RC2.jar.zip

    这个"acegi-security-tiger-1.0.0-RC2.jar.zip"压缩包包含的是Acegi Security的一个早期版本——1.0.0 Release Candidate 2(RC2),专门针对Tiger(Java SE 5.0)版本的Java开发环境。 Acegi Security的主要功能...

    acegi安全策略与CAS整合

    文档的目的是确保用户能够成功地将AceGI安全框架集成到他们的应用程序中,利用CAS服务器进行单点登录(SSO)和身份验证,以提高系统的安全性。 0.2 文档范围: 此文档涵盖了从安装CAS服务器,配置AceGI安全策略,到...

    acegi集成CAS示例

    在"acegi集成CAS示例"中,我们主要探讨如何将AceGI与CAS结合,以实现更强大的安全性与用户管理功能。这个示例将展示如何配置AceGI以使用CAS服务器进行身份验证,以及如何处理授权和会话管理。 1. **AceGI简介**:...

    acegi-security-0.8.3

    acegi-security-0.8.3驱动程序

    CAS及客户端Acegi的安装配置指南

    在本文中,我们将深入探讨如何安装和配置CAS服务器以及客户端Acegi安全系统,以便实现单点登录(SSO)功能。CAS(Central Authentication Service)是一个由耶鲁大学开发的开源SSO解决方案,而Acegi Security System...

    acegi+cas整合工程及说明1

    将acegi和cas的war包修改并整合测试,里面包含所需依赖包。经过分卷压缩一共3个文件.

    acegi-context-cas.xml

    acegi与cas集成 &lt;!-- ========= Acegi as a CAS Client的配置============= --&gt; class="org.acegisecurity.ui.cas.CasProcessingFilter"&gt; ref="authenticationManager" /&gt; value="/login.do?...

    CAS单点登录HTTP协议版本配置指南

    ### CAS单点登录HTTP协议版本配置指南 #### 一、CAS版本及所需组件 本配置指南涉及的CAS版本如下: - **服务端**:cas-server-3.4.7 - **客户端**:cas-client-3.2.0 对于服务端而言,仅需解压`cas-server-webapp...

    acegi-security-cas-0.9.0.jar.zip

    总的来说,"acegi-security-cas-0.9.0.jar.zip"包含的是一个过时但仍有参考价值的安全框架,它展示了如何在Java Web应用中实现用户认证和授权,以及如何通过CAS实现单点登录。了解和研究Acegi Security有助于我们...

Global site tag (gtag.js) - Google Analytics