You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@roller.apache.org by mr...@apache.org on 2006/02/10 22:57:23 UTC
svn commit: r376872 - in /incubator/roller/branches/roller_2.1: .classpath
tools/spring-1.2/acegi-security-1.0.0-RC1.jar
tools/spring-1.2/acegi-security-1.0.0-RC2.jar web/WEB-INF/security.xml
Author: mraible
Date: Fri Feb 10 13:57:21 2006
New Revision: 376872
URL: http://svn.apache.org/viewcvs?rev=376872&view=rev
Log:
Upgraded to Acegi Security 1.0 RC2
Added:
incubator/roller/branches/roller_2.1/tools/spring-1.2/acegi-security-1.0.0-RC2.jar (with props)
Removed:
incubator/roller/branches/roller_2.1/tools/spring-1.2/acegi-security-1.0.0-RC1.jar
Modified:
incubator/roller/branches/roller_2.1/.classpath
incubator/roller/branches/roller_2.1/web/WEB-INF/security.xml
Modified: incubator/roller/branches/roller_2.1/.classpath
URL: http://svn.apache.org/viewcvs/incubator/roller/branches/roller_2.1/.classpath?rev=376872&r1=376871&r2=376872&view=diff
==============================================================================
--- incubator/roller/branches/roller_2.1/.classpath (original)
+++ incubator/roller/branches/roller_2.1/.classpath Fri Feb 10 13:57:21 2006
@@ -1,78 +1,78 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
- <classpathentry kind="src" path="src"/>
- <classpathentry kind="src" path="sandbox/jdobackend/src"/>
- <classpathentry kind="src" path="sandbox/atomprotocol/src"/>
- <classpathentry kind="src" path="sandbox/standalone/src"/>
- <classpathentry kind="src" path="contrib/plugins/src"/>
- <classpathentry kind="src" path="tests"/>
- <classpathentry kind="src" path="build/generated/src.business"/>
- <classpathentry kind="src" path="build/generated/src.presentation"/>
- <classpathentry sourcepath="JRE_SRC" kind="var" path="JRE_LIB"/>
- <classpathentry kind="lib" path="tools/buildtime/mockrunner-0.35/lib/nekohtml.jar"/>
- <classpathentry kind="lib" path="tools/buildtime/mockrunner-0.35/lib/mockrunner-struts.jar"/>
- <classpathentry kind="lib" path="tools/buildtime/mockrunner-0.35/lib/mockrunner-servlet.jar"/>
- <classpathentry kind="lib" path="tools/buildtime/mockrunner-0.35/lib/mockrunner.jar"/>
- <classpathentry kind="lib" path="tools/buildtime/tomcat-5.0.28/servlet-api.jar"/>
- <classpathentry kind="lib" path="tools/buildtime/tomcat-5.0.28/jsp-api.jar"/>
- <classpathentry kind="lib" path="tools/buildtime/xmlParserAPIs-2.3.0.jar"/>
- <classpathentry kind="lib" path="tools/buildtime/xercesImpl-2.3.0.jar"/>
- <classpathentry kind="lib" path="tools/buildtime/hsqldb.jar"/>
- <classpathentry kind="lib" path="tools/buildtime/ejb-1.1.jar"/>
- <classpathentry kind="lib" path="tools/buildtime/ant-1.6.2/jakarta-oro-2.0.8.jar"/>
- <classpathentry kind="lib" path="tools/buildtime/ant-1.6.2/commons-net-1.2.2.jar"/>
- <classpathentry kind="lib" path="tools/buildtime/ant-1.6.2/ant-launcher.jar"/>
- <classpathentry kind="lib" path="tools/buildtime/ant-1.6.2/ant-junit.jar"/>
- <classpathentry kind="lib" path="tools/buildtime/ant-1.6.2/ant-commons-net.jar"/>
- <classpathentry kind="lib" path="tools/buildtime/ant-1.6.2/ant.jar"/>
- <classpathentry kind="lib" path="tools/lib/xmlrpc-1.2-b1.jar"/>
- <classpathentry kind="lib" path="tools/lib/velocity-tools-1.1.jar"/>
- <classpathentry kind="lib" path="tools/lib/velocity-dep-1.4.jar"/>
- <classpathentry kind="lib" path="tools/lib/velocity-1.4.jar"/>
- <classpathentry kind="lib" path="tools/lib/taglibs-string.jar"/>
- <classpathentry kind="lib" path="tools/lib/mail.jar"/>
- <classpathentry kind="lib" path="tools/lib/lucene-1.4.3.jar"/>
- <classpathentry kind="lib" path="tools/lib/jazzy-core.jar"/>
- <classpathentry kind="lib" path="tools/lib/ekitapplet.jar"/>
- <classpathentry kind="lib" path="tools/lib/concurrent-1.3.2.jar"/>
- <classpathentry kind="lib" path="tools/lib/commons-httpclient-2.0.2.jar"/>
- <classpathentry kind="lib" path="tools/lib/commons-betwixt-1.0-beta-1.jar"/>
- <classpathentry kind="lib" path="tools/lib/activation.jar"/>
- <classpathentry kind="lib" path="tools/standard-1.0.3/lib/standard.jar"/>
- <classpathentry kind="lib" path="tools/standard-1.0.3/lib/jstl.jar"/>
- <classpathentry kind="lib" path="tools/standard-1.0.3/lib/jaxen-full.jar"/>
- <classpathentry kind="lib" path="tools/struts-1.2.4/lib/struts-el.jar"/>
- <classpathentry kind="lib" path="tools/struts-1.2.4/lib/struts.jar"/>
- <classpathentry kind="lib" path="tools/struts-1.2.4/lib/jakarta-oro.jar"/>
- <classpathentry kind="lib" path="tools/struts-1.2.4/lib/commons-validator.jar"/>
- <classpathentry kind="lib" path="tools/struts-1.2.4/lib/commons-logging.jar"/>
- <classpathentry kind="lib" path="tools/struts-1.2.4/lib/commons-lang-2.0.jar"/>
- <classpathentry kind="lib" path="tools/struts-1.2.4/lib/commons-fileupload.jar"/>
- <classpathentry kind="lib" path="tools/struts-1.2.4/lib/commons-digester.jar"/>
- <classpathentry kind="lib" path="tools/struts-1.2.4/lib/commons-collections.jar"/>
- <classpathentry kind="lib" path="tools/struts-1.2.4/lib/commons-beanutils.jar"/>
- <classpathentry kind="lib" path="tools/struts-1.2.4/lib/antlr.jar"/>
- <classpathentry kind="lib" path="contrib/lib/textile4j-1.20.jar"/>
- <classpathentry kind="lib" path="contrib/lib/radeox.jar"/>
- <classpathentry kind="lib" path="contrib/lib/jython.jar"/>
- <classpathentry kind="lib" path="contrib/lib/JSPWiki.jar"/>
- <classpathentry kind="lib" path="tools/buildtime/junit-3.8.1.jar"/>
- <classpathentry sourcepath="/Applications/Java/hibernate-3.0/src" kind="lib" path="tools/hibernate-3.0/hibernate3.jar"/>
- <classpathentry kind="lib" path="tools/hibernate-3.0/lib/jta.jar"/>
- <classpathentry kind="lib" path="tools/hibernate-3.0/lib/jdbc2_0-stdext.jar"/>
- <classpathentry kind="lib" path="tools/hibernate-3.0/lib/ehcache-1.1.jar"/>
- <classpathentry kind="lib" path="tools/hibernate-3.0/lib/dom4j-1.6.jar"/>
- <classpathentry kind="lib" path="tools/hibernate-3.0/lib/cglib-2.1.jar"/>
- <classpathentry kind="lib" path="tools/hibernate-3.0/lib/asm-attrs.jar"/>
- <classpathentry kind="lib" path="tools/hibernate-3.0/lib/asm.jar"/>
- <classpathentry kind="lib" path="tools/lib/jdom.jar"/>
- <classpathentry kind="lib" path="sandbox/atomprotocol/lib/rome-fetcher-0.8.jar"/>
- <classpathentry kind="lib" path="sandbox/atomprotocol/lib/rome-0.8.jar"/>
- <classpathentry kind="lib" path="sandbox/standalone/lib/catalina.jar"/>
- <classpathentry kind="lib" path="tools/lib/log4j-1.2.11.jar"/>
- <classpathentry kind="lib" path="tools/lib/commons-codec-1.3.jar"/>
- <classpathentry kind="lib" path="tools/lib/rome-fetcher-0.7.jar"/>
- <classpathentry kind="lib" path="tools/spring-1.2/spring.jar"/>
- <classpathentry kind="lib" path="tools/spring-1.2/acegi-security-1.0.0-RC1.jar"/>
- <classpathentry kind="output" path="classes.eclipse"/>
-</classpath>
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="src" path="src"/>
+ <classpathentry kind="src" path="sandbox/jdobackend/src"/>
+ <classpathentry kind="src" path="sandbox/atomprotocol/src"/>
+ <classpathentry kind="src" path="sandbox/standalone/src"/>
+ <classpathentry kind="src" path="contrib/plugins/src"/>
+ <classpathentry kind="src" path="tests"/>
+ <classpathentry kind="src" path="build/generated/src.business"/>
+ <classpathentry kind="src" path="build/generated/src.presentation"/>
+ <classpathentry sourcepath="JRE_SRC" kind="var" path="JRE_LIB"/>
+ <classpathentry kind="lib" path="tools/buildtime/mockrunner-0.35/lib/nekohtml.jar"/>
+ <classpathentry kind="lib" path="tools/buildtime/mockrunner-0.35/lib/mockrunner-struts.jar"/>
+ <classpathentry kind="lib" path="tools/buildtime/mockrunner-0.35/lib/mockrunner-servlet.jar"/>
+ <classpathentry kind="lib" path="tools/buildtime/mockrunner-0.35/lib/mockrunner.jar"/>
+ <classpathentry kind="lib" path="tools/buildtime/tomcat-5.0.28/servlet-api.jar"/>
+ <classpathentry kind="lib" path="tools/buildtime/tomcat-5.0.28/jsp-api.jar"/>
+ <classpathentry kind="lib" path="tools/buildtime/xmlParserAPIs-2.3.0.jar"/>
+ <classpathentry kind="lib" path="tools/buildtime/xercesImpl-2.3.0.jar"/>
+ <classpathentry kind="lib" path="tools/buildtime/hsqldb.jar"/>
+ <classpathentry kind="lib" path="tools/buildtime/ejb-1.1.jar"/>
+ <classpathentry kind="lib" path="tools/buildtime/ant-1.6.2/jakarta-oro-2.0.8.jar"/>
+ <classpathentry kind="lib" path="tools/buildtime/ant-1.6.2/commons-net-1.2.2.jar"/>
+ <classpathentry kind="lib" path="tools/buildtime/ant-1.6.2/ant-launcher.jar"/>
+ <classpathentry kind="lib" path="tools/buildtime/ant-1.6.2/ant-junit.jar"/>
+ <classpathentry kind="lib" path="tools/buildtime/ant-1.6.2/ant-commons-net.jar"/>
+ <classpathentry kind="lib" path="tools/buildtime/ant-1.6.2/ant.jar"/>
+ <classpathentry kind="lib" path="tools/lib/xmlrpc-1.2-b1.jar"/>
+ <classpathentry kind="lib" path="tools/lib/velocity-tools-1.1.jar"/>
+ <classpathentry kind="lib" path="tools/lib/velocity-dep-1.4.jar"/>
+ <classpathentry kind="lib" path="tools/lib/velocity-1.4.jar"/>
+ <classpathentry kind="lib" path="tools/lib/taglibs-string.jar"/>
+ <classpathentry kind="lib" path="tools/lib/mail.jar"/>
+ <classpathentry kind="lib" path="tools/lib/lucene-1.4.3.jar"/>
+ <classpathentry kind="lib" path="tools/lib/jazzy-core.jar"/>
+ <classpathentry kind="lib" path="tools/lib/ekitapplet.jar"/>
+ <classpathentry kind="lib" path="tools/lib/concurrent-1.3.2.jar"/>
+ <classpathentry kind="lib" path="tools/lib/commons-httpclient-2.0.2.jar"/>
+ <classpathentry kind="lib" path="tools/lib/commons-betwixt-1.0-beta-1.jar"/>
+ <classpathentry kind="lib" path="tools/lib/activation.jar"/>
+ <classpathentry kind="lib" path="tools/standard-1.0.3/lib/standard.jar"/>
+ <classpathentry kind="lib" path="tools/standard-1.0.3/lib/jstl.jar"/>
+ <classpathentry kind="lib" path="tools/standard-1.0.3/lib/jaxen-full.jar"/>
+ <classpathentry kind="lib" path="tools/struts-1.2.4/lib/struts-el.jar"/>
+ <classpathentry kind="lib" path="tools/struts-1.2.4/lib/struts.jar"/>
+ <classpathentry kind="lib" path="tools/struts-1.2.4/lib/jakarta-oro.jar"/>
+ <classpathentry kind="lib" path="tools/struts-1.2.4/lib/commons-validator.jar"/>
+ <classpathentry kind="lib" path="tools/struts-1.2.4/lib/commons-logging.jar"/>
+ <classpathentry kind="lib" path="tools/struts-1.2.4/lib/commons-lang-2.0.jar"/>
+ <classpathentry kind="lib" path="tools/struts-1.2.4/lib/commons-fileupload.jar"/>
+ <classpathentry kind="lib" path="tools/struts-1.2.4/lib/commons-digester.jar"/>
+ <classpathentry kind="lib" path="tools/struts-1.2.4/lib/commons-collections.jar"/>
+ <classpathentry kind="lib" path="tools/struts-1.2.4/lib/commons-beanutils.jar"/>
+ <classpathentry kind="lib" path="tools/struts-1.2.4/lib/antlr.jar"/>
+ <classpathentry kind="lib" path="contrib/lib/textile4j-1.20.jar"/>
+ <classpathentry kind="lib" path="contrib/lib/radeox.jar"/>
+ <classpathentry kind="lib" path="contrib/lib/jython.jar"/>
+ <classpathentry kind="lib" path="contrib/lib/JSPWiki.jar"/>
+ <classpathentry kind="lib" path="tools/buildtime/junit-3.8.1.jar"/>
+ <classpathentry sourcepath="/Applications/Java/hibernate-3.0/src" kind="lib" path="tools/hibernate-3.0/hibernate3.jar"/>
+ <classpathentry kind="lib" path="tools/hibernate-3.0/lib/jta.jar"/>
+ <classpathentry kind="lib" path="tools/hibernate-3.0/lib/jdbc2_0-stdext.jar"/>
+ <classpathentry kind="lib" path="tools/hibernate-3.0/lib/ehcache-1.1.jar"/>
+ <classpathentry kind="lib" path="tools/hibernate-3.0/lib/dom4j-1.6.jar"/>
+ <classpathentry kind="lib" path="tools/hibernate-3.0/lib/cglib-2.1.jar"/>
+ <classpathentry kind="lib" path="tools/hibernate-3.0/lib/asm-attrs.jar"/>
+ <classpathentry kind="lib" path="tools/hibernate-3.0/lib/asm.jar"/>
+ <classpathentry kind="lib" path="tools/lib/jdom.jar"/>
+ <classpathentry kind="lib" path="sandbox/atomprotocol/lib/rome-fetcher-0.8.jar"/>
+ <classpathentry kind="lib" path="sandbox/atomprotocol/lib/rome-0.8.jar"/>
+ <classpathentry kind="lib" path="sandbox/standalone/lib/catalina.jar"/>
+ <classpathentry kind="lib" path="tools/lib/log4j-1.2.11.jar"/>
+ <classpathentry kind="lib" path="tools/lib/commons-codec-1.3.jar"/>
+ <classpathentry kind="lib" path="tools/lib/rome-fetcher-0.7.jar"/>
+ <classpathentry kind="lib" path="tools/spring-1.2/spring.jar"/>
+ <classpathentry kind="lib" path="tools/spring-1.2/acegi-security-1.0.0-RC2.jar"/>
+ <classpathentry kind="output" path="classes.eclipse"/>
+</classpath>
Added: incubator/roller/branches/roller_2.1/tools/spring-1.2/acegi-security-1.0.0-RC2.jar
URL: http://svn.apache.org/viewcvs/incubator/roller/branches/roller_2.1/tools/spring-1.2/acegi-security-1.0.0-RC2.jar?rev=376872&view=auto
==============================================================================
Binary file - no diff available.
Propchange: incubator/roller/branches/roller_2.1/tools/spring-1.2/acegi-security-1.0.0-RC2.jar
------------------------------------------------------------------------------
svn:mime-type = application/octet-stream
Modified: incubator/roller/branches/roller_2.1/web/WEB-INF/security.xml
URL: http://svn.apache.org/viewcvs/incubator/roller/branches/roller_2.1/web/WEB-INF/security.xml?rev=376872&r1=376871&r2=376872&view=diff
==============================================================================
--- incubator/roller/branches/roller_2.1/web/WEB-INF/security.xml (original)
+++ incubator/roller/branches/roller_2.1/web/WEB-INF/security.xml Fri Feb 10 13:57:21 2006
@@ -1,159 +1,159 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN"
- "http://www.springframework.org/dtd/spring-beans.dtd">
-
-<beans>
-
- <!-- ======================== FILTER CHAIN ======================= -->
- <bean id="filterChainProxy" class="org.acegisecurity.util.FilterChainProxy">
- <property name="filterInvocationDefinitionSource">
- <value>
- CONVERT_URL_TO_LOWERCASE_BEFORE_COMPARISON
- PATTERN_TYPE_APACHE_ANT
- /**=httpSessionContextIntegrationFilter,authenticationProcessingFilter,rememberMeProcessingFilter,channelProcessingFilter,remoteUserFilter,anonymousProcessingFilter,securityEnforcementFilter
- </value>
- </property>
- </bean>
-
- <!-- ======================== AUTHENTICATION ======================= -->
-
- <!-- Note the order that entries are placed against the objectDefinitionSource is critical.
- The FilterSecurityInterceptor will work from the top of the list down to the FIRST pattern that matches the request URL.
- Accordingly, you should place MOST SPECIFIC (ie a/b/c/d.*) expressions first, with LEAST SPECIFIC (ie a/.*) expressions last -->
- <bean id="filterInvocationInterceptor" class="org.acegisecurity.intercept.web.FilterSecurityInterceptor">
- <property name="authenticationManager" ref="authenticationManager"/>
- <property name="accessDecisionManager" ref="accessDecisionManager"/>
- <property name="objectDefinitionSource">
- <value>
- PATTERN_TYPE_APACHE_ANT
- /editor/**=admin,editor
- /admin/**=admin
- /rewrite-status*=admin
- /login-redirect.jsp=admin,editor
- </value>
- </property>
- </bean>
-
- <bean id="authenticationManager" class="org.acegisecurity.providers.ProviderManager">
- <property name="providers">
- <list>
- <ref local="daoAuthenticationProvider"/>
- <ref local="anonymousAuthenticationProvider"/>
- <!-- rememberMeAuthenticationProvider added programmatically -->
- </list>
- </property>
- </bean>
-
- <!-- Log failed authentication attempts to commons-logging -->
- <bean id="loggerListener" class="org.acegisecurity.event.authentication.LoggerListener"/>
-
- <bean id="daoAuthenticationProvider" class="org.acegisecurity.providers.dao.DaoAuthenticationProvider">
- <property name="userDetailsService" ref="jdbcAuthenticationDao"/>
- <property name="userCache" ref="userCache"/>
- </bean>
-
- <!-- Read users from database -->
- <bean id="jdbcAuthenticationDao" class="org.acegisecurity.userdetails.jdbc.JdbcDaoImpl">
- <property name="dataSource">
- <bean class="org.springframework.jndi.JndiObjectFactoryBean">
- <property name="jndiName" value="java:comp/env/jdbc/rollerdb"/>
- </bean>
- </property>
- <property name="usersByUsernameQuery">
- <value>SELECT username,passphrase,isenabled FROM rolleruser WHERE username = ?</value>
- </property>
- <property name="authoritiesByUsernameQuery">
- <value>SELECT username,rolename FROM userrole WHERE username = ?</value>
- </property>
- </bean>
-
- <bean id="userCache" 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>
-
- <bean id="anonymousAuthenticationProvider" class="org.acegisecurity.providers.anonymous.AnonymousAuthenticationProvider">
- <property name="key" value="anonymous"/>
- </bean>
-
- <bean id="roleVoter" class="org.acegisecurity.vote.RoleVoter">
- <property name="rolePrefix" value=""/>
- </bean>
-
- <bean id="accessDecisionManager" class="org.acegisecurity.vote.AffirmativeBased">
- <property name="allowIfAllAbstainDecisions" value="false"/>
- <property name="decisionVoters">
- <list>
- <ref local="roleVoter"/>
- </list>
- </property>
- </bean>
-
- <!-- ===================== HTTP REQUEST SECURITY ==================== -->
- <bean id="httpSessionContextIntegrationFilter" class="org.acegisecurity.context.HttpSessionContextIntegrationFilter"/>
-
- <bean id="authenticationProcessingFilter" class="org.acegisecurity.ui.webapp.AuthenticationProcessingFilter">
- <property name="authenticationManager" ref="authenticationManager"/>
- <property name="authenticationFailureUrl" value="/loginerror.jsp"/>
- <property name="defaultTargetUrl" value="/"/>
- <property name="filterProcessesUrl" value="/j_security_check"/>
- <property name="rememberMeServices" ref="rememberMeServices"/>
- </bean>
-
- <bean id="anonymousProcessingFilter" class="org.acegisecurity.providers.anonymous.AnonymousProcessingFilter">
- <property name="key" value="anonymous"/>
- <property name="userAttribute" value="anonymous,ROLE_ANONYMOUS"/>
- </bean>
-
- <bean id="securityEnforcementFilter" class="org.acegisecurity.intercept.web.SecurityEnforcementFilter">
- <property name="filterSecurityInterceptor" ref="filterInvocationInterceptor"/>
- <property name="authenticationEntryPoint" ref="authenticationProcessingFilterEntryPoint"/>
- </bean>
-
- <bean id="remoteUserFilter" class="org.acegisecurity.wrapper.SecurityContextHolderAwareRequestFilter"/>
-
- <bean id="authenticationProcessingFilterEntryPoint" class="org.acegisecurity.ui.webapp.AuthenticationProcessingFilterEntryPoint">
- <property name="loginFormUrl" value="/login.jsp"/>
- <property name="forceHttps" value="false"/>
- </bean>
-
- <!-- ===================== REMEMBER ME ==================== -->
- <bean id="rememberMeProcessingFilter" class="org.acegisecurity.ui.rememberme.RememberMeProcessingFilter">
- <property name="rememberMeServices" ref="rememberMeServices"/>
- </bean>
-
- <bean id="rememberMeServices" class="org.acegisecurity.ui.rememberme.TokenBasedRememberMeServices">
- <property name="userDetailsService" ref="jdbcAuthenticationDao"/>
- <property name="key" value="rollerlovesacegi"/>
- <property name="parameter" value="rememberMe"/>
- </bean>
-
- <bean id="rememberMeAuthenticationProvider" class="org.acegisecurity.providers.rememberme.RememberMeAuthenticationProvider">
- <property name="key" value="rollerlovesacegi"/>
- </bean>
-
- <!-- ===================== SSL SWITCHING ==================== -->
- <bean id="channelProcessingFilter" class="org.acegisecurity.securechannel.ChannelProcessingFilter">
- <property name="channelDecisionManager" ref="channelDecisionManager"/>
- <property name="filterInvocationDefinitionSource">
- <value>
- PATTERN_TYPE_APACHE_ANT
- </value>
- </property>
- </bean>
-
- <bean id="channelDecisionManager" class="org.acegisecurity.securechannel.ChannelDecisionManagerImpl">
- <property name="channelProcessors">
- <list>
- <bean class="org.acegisecurity.securechannel.SecureChannelProcessor"/>
- <bean class="org.acegisecurity.securechannel.InsecureChannelProcessor"/>
- </list>
- </property>
- </bean>
-</beans>
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN"
+ "http://www.springframework.org/dtd/spring-beans.dtd">
+
+<beans>
+
+ <!-- ======================== FILTER CHAIN ======================= -->
+ <bean id="filterChainProxy" class="org.acegisecurity.util.FilterChainProxy">
+ <property name="filterInvocationDefinitionSource">
+ <value>
+ CONVERT_URL_TO_LOWERCASE_BEFORE_COMPARISON
+ PATTERN_TYPE_APACHE_ANT
+ /**=httpSessionContextIntegrationFilter,authenticationProcessingFilter,rememberMeProcessingFilter,channelProcessingFilter,remoteUserFilter,anonymousProcessingFilter,exceptionTranslationFilter,filterInvocationInterceptor
+ </value>
+ </property>
+ </bean>
+
+ <!-- ======================== AUTHENTICATION ======================= -->
+
+ <!-- Note the order that entries are placed against the objectDefinitionSource is critical.
+ The FilterSecurityInterceptor will work from the top of the list down to the FIRST pattern that matches the request URL.
+ Accordingly, you should place MOST SPECIFIC (ie a/b/c/d.*) expressions first, with LEAST SPECIFIC (ie a/.*) expressions last -->
+ <bean id="filterInvocationInterceptor" class="org.acegisecurity.intercept.web.FilterSecurityInterceptor">
+ <property name="authenticationManager" ref="authenticationManager"/>
+ <property name="accessDecisionManager" ref="accessDecisionManager"/>
+ <property name="objectDefinitionSource">
+ <value>
+ PATTERN_TYPE_APACHE_ANT
+ /editor/**=admin,editor
+ /admin/**=admin
+ /rewrite-status*=admin
+ /login-redirect.jsp=admin,editor
+ </value>
+ </property>
+ </bean>
+
+ <bean id="authenticationManager" class="org.acegisecurity.providers.ProviderManager">
+ <property name="providers">
+ <list>
+ <ref local="daoAuthenticationProvider"/>
+ <ref local="anonymousAuthenticationProvider"/>
+ <!-- rememberMeAuthenticationProvider added programmatically -->
+ </list>
+ </property>
+ </bean>
+
+ <!-- Log failed authentication attempts to commons-logging -->
+ <bean id="loggerListener" class="org.acegisecurity.event.authentication.LoggerListener"/>
+
+ <bean id="daoAuthenticationProvider" class="org.acegisecurity.providers.dao.DaoAuthenticationProvider">
+ <property name="userDetailsService" ref="jdbcAuthenticationDao"/>
+ <property name="userCache" ref="userCache"/>
+ </bean>
+
+ <!-- Read users from database -->
+ <bean id="jdbcAuthenticationDao" class="org.acegisecurity.userdetails.jdbc.JdbcDaoImpl">
+ <property name="dataSource">
+ <bean class="org.springframework.jndi.JndiObjectFactoryBean">
+ <property name="jndiName" value="java:comp/env/jdbc/rollerdb"/>
+ </bean>
+ </property>
+ <property name="usersByUsernameQuery">
+ <value>SELECT username,passphrase,isenabled FROM rolleruser WHERE username = ?</value>
+ </property>
+ <property name="authoritiesByUsernameQuery">
+ <value>SELECT username,rolename FROM userrole WHERE username = ?</value>
+ </property>
+ </bean>
+
+ <bean id="userCache" 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>
+
+ <bean id="anonymousAuthenticationProvider" class="org.acegisecurity.providers.anonymous.AnonymousAuthenticationProvider">
+ <property name="key" value="anonymous"/>
+ </bean>
+
+ <bean id="roleVoter" class="org.acegisecurity.vote.RoleVoter">
+ <property name="rolePrefix" value=""/>
+ </bean>
+
+ <bean id="accessDecisionManager" class="org.acegisecurity.vote.AffirmativeBased">
+ <property name="allowIfAllAbstainDecisions" value="false"/>
+ <property name="decisionVoters">
+ <list>
+ <ref local="roleVoter"/>
+ </list>
+ </property>
+ </bean>
+
+ <!-- ===================== HTTP REQUEST SECURITY ==================== -->
+ <bean id="httpSessionContextIntegrationFilter" class="org.acegisecurity.context.HttpSessionContextIntegrationFilter"/>
+
+ <bean id="authenticationProcessingFilter" class="org.acegisecurity.ui.webapp.AuthenticationProcessingFilter">
+ <property name="authenticationManager" ref="authenticationManager"/>
+ <property name="authenticationFailureUrl" value="/loginerror.jsp"/>
+ <property name="defaultTargetUrl" value="/"/>
+ <property name="filterProcessesUrl" value="/j_security_check"/>
+ <property name="rememberMeServices" ref="rememberMeServices"/>
+ </bean>
+
+ <bean id="anonymousProcessingFilter" class="org.acegisecurity.providers.anonymous.AnonymousProcessingFilter">
+ <property name="key" value="anonymous"/>
+ <property name="userAttribute" value="anonymous,ROLE_ANONYMOUS"/>
+ </bean>
+
+ <bean id="exceptionTranslationFilter" class="org.acegisecurity.ui.ExceptionTranslationFilter">
+ <property name="authenticationEntryPoint" ref="authenticationProcessingFilterEntryPoint"/>
+ </bean>
+
+ <bean id="remoteUserFilter" class="org.acegisecurity.wrapper.SecurityContextHolderAwareRequestFilter"/>
+
+ <bean id="authenticationProcessingFilterEntryPoint" class="org.acegisecurity.ui.webapp.AuthenticationProcessingFilterEntryPoint">
+ <property name="loginFormUrl" value="/login.jsp"/>
+ <property name="forceHttps" value="false"/>
+ </bean>
+
+ <!-- ===================== REMEMBER ME ==================== -->
+ <bean id="rememberMeProcessingFilter" class="org.acegisecurity.ui.rememberme.RememberMeProcessingFilter">
+ <property name="authenticationManager" ref="authenticationManager"/>
+ <property name="rememberMeServices" ref="rememberMeServices"/>
+ </bean>
+
+ <bean id="rememberMeServices" class="org.acegisecurity.ui.rememberme.TokenBasedRememberMeServices">
+ <property name="userDetailsService" ref="jdbcAuthenticationDao"/>
+ <property name="key" value="rollerlovesacegi"/>
+ <property name="parameter" value="rememberMe"/>
+ </bean>
+
+ <bean id="rememberMeAuthenticationProvider" class="org.acegisecurity.providers.rememberme.RememberMeAuthenticationProvider">
+ <property name="key" value="rollerlovesacegi"/>
+ </bean>
+
+ <!-- ===================== SSL SWITCHING ==================== -->
+ <bean id="channelProcessingFilter" class="org.acegisecurity.securechannel.ChannelProcessingFilter">
+ <property name="channelDecisionManager" ref="channelDecisionManager"/>
+ <property name="filterInvocationDefinitionSource">
+ <value>
+ PATTERN_TYPE_APACHE_ANT
+ </value>
+ </property>
+ </bean>
+
+ <bean id="channelDecisionManager" class="org.acegisecurity.securechannel.ChannelDecisionManagerImpl">
+ <property name="channelProcessors">
+ <list>
+ <bean class="org.acegisecurity.securechannel.SecureChannelProcessor"/>
+ <bean class="org.acegisecurity.securechannel.InsecureChannelProcessor"/>
+ </list>
+ </property>
+ </bean>
+</beans>