SEC-562: Further repackaging.

This commit is contained in:
Luke Taylor 2007-09-21 18:24:16 +00:00
parent 5a586c04a9
commit 4083e2ef92
39 changed files with 374 additions and 374 deletions

View File

@ -4,16 +4,16 @@
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion> <modelVersion>4.0.0</modelVersion>
<parent> <parent>
<groupId>org.acegisecurity</groupId> <groupId>org.springframework.security</groupId>
<artifactId>acegi-security-samples</artifactId> <artifactId>spring-security-samples</artifactId>
<version>2.0-SNAPSHOT</version> <version>2.0-SNAPSHOT</version>
</parent> </parent>
<artifactId>acegi-security-sample-annotations</artifactId> <artifactId>spring-security-sample-annotations</artifactId>
<name>Acegi Security System for Spring - Annotations sample</name> <name>Acegi Security System for Spring - Annotations sample</name>
<dependencies> <dependencies>
<dependency> <dependency>
<groupId>org.acegisecurity</groupId> <groupId>org.springframework.security</groupId>
<artifactId>acegi-security-tiger</artifactId> <artifactId>spring-security-core-tiger</artifactId>
<version>${project.version}</version> <version>${project.version}</version>
<type>jar</type> <type>jar</type>
</dependency> </dependency>

View File

@ -22,19 +22,19 @@
<beans> <beans>
<!-- =================== SECURITY SYSTEM DEFINITIONS ================== --> <!-- =================== SECURITY SYSTEM DEFINITIONS ================== -->
<!-- RunAsManager --> <!-- RunAsManager -->
<bean id="runAsManager" class="org.acegisecurity.runas.RunAsManagerImpl"> <bean id="runAsManager" class="org.springframework.security.runas.RunAsManagerImpl">
<property name="key"><value>my_run_as_password</value></property> <property name="key"><value>my_run_as_password</value></property>
</bean> </bean>
<!-- ~~~~~~~~~~~~~~~~~~~~ AUTHENTICATION DEFINITIONS ~~~~~~~~~~~~~~~~~~ --> <!-- ~~~~~~~~~~~~~~~~~~~~ AUTHENTICATION DEFINITIONS ~~~~~~~~~~~~~~~~~~ -->
<!-- This authentication provider accepts any presented TestingAuthenticationToken --> <!-- This authentication provider accepts any presented TestingAuthenticationToken -->
<bean id="testingAuthenticationProvider" class="org.acegisecurity.providers.TestingAuthenticationProvider"/> <bean id="testingAuthenticationProvider" class="org.springframework.security.providers.TestingAuthenticationProvider"/>
<!-- The authentication manager that iterates through our only authentication provider --> <!-- The authentication manager that iterates through our only authentication provider -->
<bean id="authenticationManager" class="org.acegisecurity.providers.ProviderManager"> <bean id="authenticationManager" class="org.springframework.security.providers.ProviderManager">
<property name="providers"> <property name="providers">
<list> <list>
<ref local="testingAuthenticationProvider"/> <ref local="testingAuthenticationProvider"/>
@ -45,10 +45,10 @@
<!-- ~~~~~~~~~~~~~~~~~~~~ AUTHORIZATION DEFINITIONS ~~~~~~~~~~~~~~~~~~~ --> <!-- ~~~~~~~~~~~~~~~~~~~~ AUTHORIZATION DEFINITIONS ~~~~~~~~~~~~~~~~~~~ -->
<!-- An access decision voter that reads ROLE_* configuaration settings --> <!-- An access decision voter that reads ROLE_* configuaration settings -->
<bean id="roleVoter" class="org.acegisecurity.vote.RoleVoter"/> <bean id="roleVoter" class="org.springframework.security.vote.RoleVoter"/>
<!-- A unanimous access decision manager --> <!-- A unanimous access decision manager -->
<bean id="accessDecisionManager" class="org.acegisecurity.vote.UnanimousBased"> <bean id="accessDecisionManager" class="org.springframework.security.vote.UnanimousBased">
<property name="allowIfAllAbstainDecisions"><value>false</value></property> <property name="allowIfAllAbstainDecisions"><value>false</value></property>
<property name="decisionVoters"> <property name="decisionVoters">
<list> <list>
@ -56,31 +56,31 @@
</list> </list>
</property> </property>
</bean> </bean>
<!-- ===================== SECURITY DEFINITIONS ======================= --> <!-- ===================== SECURITY DEFINITIONS ======================= -->
<bean id="attributes" class="org.acegisecurity.annotation.SecurityAnnotationAttributes"/> <bean id="attributes" class="org.springframework.security.annotation.SecurityAnnotationAttributes"/>
<bean id="objectDefinitionSource" class="org.acegisecurity.intercept.method.MethodDefinitionAttributes"> <bean id="objectDefinitionSource" class="org.springframework.security.intercept.method.MethodDefinitionAttributes">
<property name="attributes"><ref local="attributes"/></property> <property name="attributes"><ref local="attributes"/></property>
</bean> </bean>
<!-- We don't validate config attributes, as it's unsupported by MethodDefinitionAttributes --> <!-- We don't validate config attributes, as it's unsupported by MethodDefinitionAttributes -->
<bean id="securityInterceptor" class="org.acegisecurity.intercept.method.aopalliance.MethodSecurityInterceptor"> <bean id="securityInterceptor" class="org.springframework.security.intercept.method.aopalliance.MethodSecurityInterceptor">
<property name="validateConfigAttributes"><value>false</value></property> <property name="validateConfigAttributes"><value>false</value></property>
<property name="authenticationManager"><ref local="authenticationManager"/></property> <property name="authenticationManager"><ref local="authenticationManager"/></property>
<property name="accessDecisionManager"><ref local="accessDecisionManager"/></property> <property name="accessDecisionManager"><ref local="accessDecisionManager"/></property>
<property name="runAsManager"><ref local="runAsManager"/></property> <property name="runAsManager"><ref local="runAsManager"/></property>
<property name="objectDefinitionSource"><ref local="objectDefinitionSource"/></property> <property name="objectDefinitionSource"><ref local="objectDefinitionSource"/></property>
</bean> </bean>
<bean id="bankService" class="sample.annotations.BankServiceImpl"/> <bean id="bankService" class="sample.annotations.BankServiceImpl"/>
<!-- <!--
This bean is a postprocessor that will automatically apply relevant advisors This bean is a postprocessor that will automatically apply relevant advisors
to any bean in child factories. to any bean in child factories.
--> -->
<bean id="autoproxy" <bean id="autoproxy"
class="org.springframework.aop.framework.autoproxy.DefaultAdvisorAutoProxyCreator"> class="org.springframework.aop.framework.autoproxy.DefaultAdvisorAutoProxyCreator">
</bean> </bean>
@ -91,9 +91,9 @@
above configuration is a JDK 5 Annotations Attributes-based source. above configuration is a JDK 5 Annotations Attributes-based source.
--> -->
<bean id="methodSecurityAdvisor" <bean id="methodSecurityAdvisor"
class="org.acegisecurity.intercept.method.aopalliance.MethodDefinitionSourceAdvisor" class="org.springframework.security.intercept.method.aopalliance.MethodDefinitionSourceAdvisor"
autowire="constructor" > autowire="constructor" >
</bean> </bean>
</beans> </beans>

View File

@ -4,11 +4,11 @@
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion> <modelVersion>4.0.0</modelVersion>
<parent> <parent>
<groupId>org.acegisecurity</groupId> <groupId>org.springframework.security</groupId>
<artifactId>acegi-security-samples</artifactId> <artifactId>spring-security-samples</artifactId>
<version>2.0-SNAPSHOT</version> <version>2.0-SNAPSHOT</version>
</parent> </parent>
<artifactId>acegi-security-sample-attributes</artifactId> <artifactId>spring-security-sample-attributes</artifactId>
<name>Acegi Security System for Spring - Attributes sample</name> <name>Acegi Security System for Spring - Attributes sample</name>
<dependencies> <dependencies>
<dependency> <dependency>

View File

@ -22,19 +22,19 @@
<beans> <beans>
<!-- =================== SECURITY SYSTEM DEFINITIONS ================== --> <!-- =================== SECURITY SYSTEM DEFINITIONS ================== -->
<!-- RunAsManager --> <!-- RunAsManager -->
<bean id="runAsManager" class="org.acegisecurity.runas.RunAsManagerImpl"> <bean id="runAsManager" class="org.springframework.security.runas.RunAsManagerImpl">
<property name="key"><value>my_run_as_password</value></property> <property name="key"><value>my_run_as_password</value></property>
</bean> </bean>
<!-- ~~~~~~~~~~~~~~~~~~~~ AUTHENTICATION DEFINITIONS ~~~~~~~~~~~~~~~~~~ --> <!-- ~~~~~~~~~~~~~~~~~~~~ AUTHENTICATION DEFINITIONS ~~~~~~~~~~~~~~~~~~ -->
<!-- This authentication provider accepts any presented TestingAuthenticationToken --> <!-- This authentication provider accepts any presented TestingAuthenticationToken -->
<bean id="testingAuthenticationProvider" class="org.acegisecurity.providers.TestingAuthenticationProvider"/> <bean id="testingAuthenticationProvider" class="org.springframework.security.providers.TestingAuthenticationProvider"/>
<!-- The authentication manager that iterates through our only authentication provider --> <!-- The authentication manager that iterates through our only authentication provider -->
<bean id="authenticationManager" class="org.acegisecurity.providers.ProviderManager"> <bean id="authenticationManager" class="org.springframework.security.providers.ProviderManager">
<property name="providers"> <property name="providers">
<list> <list>
<ref local="testingAuthenticationProvider"/> <ref local="testingAuthenticationProvider"/>
@ -45,10 +45,10 @@
<!-- ~~~~~~~~~~~~~~~~~~~~ AUTHORIZATION DEFINITIONS ~~~~~~~~~~~~~~~~~~~ --> <!-- ~~~~~~~~~~~~~~~~~~~~ AUTHORIZATION DEFINITIONS ~~~~~~~~~~~~~~~~~~~ -->
<!-- An access decision voter that reads ROLE_* configuaration settings --> <!-- An access decision voter that reads ROLE_* configuaration settings -->
<bean id="roleVoter" class="org.acegisecurity.vote.RoleVoter"/> <bean id="roleVoter" class="org.springframework.security.vote.RoleVoter"/>
<!-- A unanimous access decision manager --> <!-- A unanimous access decision manager -->
<bean id="accessDecisionManager" class="org.acegisecurity.vote.UnanimousBased"> <bean id="accessDecisionManager" class="org.springframework.security.vote.UnanimousBased">
<property name="allowIfAllAbstainDecisions"><value>false</value></property> <property name="allowIfAllAbstainDecisions"><value>false</value></property>
<property name="decisionVoters"> <property name="decisionVoters">
<list> <list>
@ -56,30 +56,30 @@
</list> </list>
</property> </property>
</bean> </bean>
<!-- ===================== SECURITY DEFINITIONS ======================= --> <!-- ===================== SECURITY DEFINITIONS ======================= -->
<bean id="attributes" class="org.springframework.metadata.commons.CommonsAttributes"/> <bean id="attributes" class="org.springframework.metadata.commons.CommonsAttributes"/>
<bean id="objectDefinitionSource" class="org.acegisecurity.intercept.method.MethodDefinitionAttributes"> <bean id="objectDefinitionSource" class="org.springframework.security.intercept.method.MethodDefinitionAttributes">
<property name="attributes"><ref local="attributes"/></property> <property name="attributes"><ref local="attributes"/></property>
</bean> </bean>
<!-- We don't validate config attributes, as it's unsupported by MethodDefinitionAttributes --> <!-- We don't validate config attributes, as it's unsupported by MethodDefinitionAttributes -->
<bean id="securityInterceptor" class="org.acegisecurity.intercept.method.aopalliance.MethodSecurityInterceptor"> <bean id="securityInterceptor" class="org.springframework.security.intercept.method.aopalliance.MethodSecurityInterceptor">
<property name="validateConfigAttributes"><value>false</value></property> <property name="validateConfigAttributes"><value>false</value></property>
<property name="authenticationManager"><ref local="authenticationManager"/></property> <property name="authenticationManager"><ref local="authenticationManager"/></property>
<property name="accessDecisionManager"><ref local="accessDecisionManager"/></property> <property name="accessDecisionManager"><ref local="accessDecisionManager"/></property>
<property name="runAsManager"><ref local="runAsManager"/></property> <property name="runAsManager"><ref local="runAsManager"/></property>
<property name="objectDefinitionSource"><ref local="objectDefinitionSource"/></property> <property name="objectDefinitionSource"><ref local="objectDefinitionSource"/></property>
</bean> </bean>
<bean id="bankService" class="sample.attributes.BankServiceImpl"/> <bean id="bankService" class="sample.attributes.BankServiceImpl"/>
<!-- <!--
This bean is a postprocessor that will automatically apply relevant advisors This bean is a postprocessor that will automatically apply relevant advisors
to any bean in child factories. to any bean in child factories.
--> -->
<bean id="autoproxy" <bean id="autoproxy"
class="org.springframework.aop.framework.autoproxy.DefaultAdvisorAutoProxyCreator"> class="org.springframework.aop.framework.autoproxy.DefaultAdvisorAutoProxyCreator">
</bean> </bean>
@ -90,7 +90,7 @@
above configuration is a Commons Attributes-based source. above configuration is a Commons Attributes-based source.
--> -->
<bean id="methodSecurityAdvisor" <bean id="methodSecurityAdvisor"
class="org.acegisecurity.intercept.method.aopalliance.MethodDefinitionSourceAdvisor" class="org.springframework.security.intercept.method.aopalliance.MethodDefinitionSourceAdvisor"
autowire="constructor" > autowire="constructor" >
</bean> </bean>

View File

@ -27,10 +27,10 @@
<ref local="remoteInvocationFactory"/> <ref local="remoteInvocationFactory"/>
</property> </property>
</bean> </bean>
<bean id="remoteInvocationFactory" class="org.acegisecurity.ui.rmi.ContextPropagatingRemoteInvocationFactory"/> <bean id="remoteInvocationFactory" class="org.springframework.security.ui.rmi.ContextPropagatingRemoteInvocationFactory"/>
--> -->
<!-- Proxy for the HTTP-invoker-exported ContactManager --> <!-- Proxy for the HTTP-invoker-exported ContactManager -->
<!-- Spring's HTTP invoker uses Java serialization via HTTP --> <!-- Spring's HTTP invoker uses Java serialization via HTTP -->
<bean id="httpInvokerProxy" class="org.springframework.remoting.httpinvoker.HttpInvokerProxyFactoryBean"> <bean id="httpInvokerProxy" class="org.springframework.remoting.httpinvoker.HttpInvokerProxyFactoryBean">
@ -47,7 +47,7 @@
<!-- Automatically propagates ContextHolder-managed Authentication principal <!-- Automatically propagates ContextHolder-managed Authentication principal
and credentials to a HTTP invoker BASIC authentication header --> and credentials to a HTTP invoker BASIC authentication header -->
<bean id="httpInvokerRequestExecutor" class="org.acegisecurity.context.httpinvoker.AuthenticationSimpleHttpInvokerRequestExecutor"/> <bean id="httpInvokerRequestExecutor" class="org.springframework.security.context.httpinvoker.AuthenticationSimpleHttpInvokerRequestExecutor"/>
<!-- Proxy for the Hessian-exported ContactManager <!-- Proxy for the Hessian-exported ContactManager
<bean id="hessianProxy" class="org.springframework.remoting.caucho.HessianProxyFactoryBean"> <bean id="hessianProxy" class="org.springframework.remoting.caucho.HessianProxyFactoryBean">
@ -59,7 +59,7 @@
</property> </property>
</bean> </bean>
--> -->
<!-- Proxy for the Burlap-exported ContactManager <!-- Proxy for the Burlap-exported ContactManager
<bean id="burlapProxy" class="org.springframework.remoting.caucho.BurlapProxyFactoryBean"> <bean id="burlapProxy" class="org.springframework.remoting.caucho.BurlapProxyFactoryBean">
<property name="serviceInterface"> <property name="serviceInterface">
@ -70,5 +70,5 @@
</property> </property>
</bean> </bean>
--> -->
</beans> </beans>

View File

@ -4,18 +4,18 @@
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion> <modelVersion>4.0.0</modelVersion>
<parent> <parent>
<groupId>org.acegisecurity</groupId> <groupId>org.springframework.security</groupId>
<artifactId>acegi-security-samples</artifactId> <artifactId>spring-security-samples</artifactId>
<version>2.0-SNAPSHOT</version> <version>2.0-SNAPSHOT</version>
</parent> </parent>
<artifactId>acegi-security-samples-contacts</artifactId> <artifactId>spring-security-samples-contacts</artifactId>
<name>Acegi Security System for Spring - Contacts sample</name> <name>Acegi Security System for Spring - Contacts sample</name>
<packaging>war</packaging> <packaging>war</packaging>
<dependencies> <dependencies>
<dependency> <dependency>
<groupId>org.acegisecurity</groupId> <groupId>org.springframework.security</groupId>
<artifactId>acegi-security</artifactId> <artifactId>spring-security-core</artifactId>
<version>${project.version}</version> <version>${project.version}</version>
</dependency> </dependency>
<dependency> <dependency>

View File

@ -14,7 +14,7 @@
*/ */
package sample.contact; package sample.contact;
import org.acegisecurity.acl.basic.SimpleAclEntry; import org.springframework.security.acl.basic.SimpleAclEntry;
/** /**

View File

@ -14,9 +14,9 @@
*/ */
package sample.contact; package sample.contact;
import org.acegisecurity.acls.Permission; import org.springframework.security.acls.Permission;
import org.acegisecurity.acls.domain.BasePermission; import org.springframework.security.acls.domain.BasePermission;
import org.acegisecurity.acls.sid.PrincipalSid; import org.springframework.security.acls.sid.PrincipalSid;
import org.springframework.beans.factory.InitializingBean; import org.springframework.beans.factory.InitializingBean;

View File

@ -14,7 +14,7 @@
*/ */
package sample.contact; package sample.contact;
import org.acegisecurity.acls.domain.BasePermission; import org.springframework.security.acls.domain.BasePermission;
import org.springframework.validation.Errors; import org.springframework.validation.Errors;
import org.springframework.validation.ValidationUtils; import org.springframework.validation.ValidationUtils;

View File

@ -14,9 +14,9 @@
*/ */
package sample.contact; package sample.contact;
import org.acegisecurity.acls.Acl; import org.springframework.security.acls.Acl;
import org.acegisecurity.acls.AclService; import org.springframework.security.acls.AclService;
import org.acegisecurity.acls.objectidentity.ObjectIdentityImpl; import org.springframework.security.acls.objectidentity.ObjectIdentityImpl;
import org.springframework.beans.factory.InitializingBean; import org.springframework.beans.factory.InitializingBean;

View File

@ -15,11 +15,11 @@
package sample.contact; package sample.contact;
import org.acegisecurity.Authentication; import org.springframework.security.Authentication;
import org.acegisecurity.context.SecurityContextHolder; import org.springframework.security.context.SecurityContextHolder;
import org.acegisecurity.providers.UsernamePasswordAuthenticationToken; import org.springframework.security.providers.UsernamePasswordAuthenticationToken;
import org.springframework.beans.factory.ListableBeanFactory; import org.springframework.beans.factory.ListableBeanFactory;

View File

@ -14,8 +14,8 @@
*/ */
package sample.contact; package sample.contact;
import org.acegisecurity.acls.Permission; import org.springframework.security.acls.Permission;
import org.acegisecurity.acls.sid.Sid; import org.springframework.security.acls.sid.Sid;
import java.util.List; import java.util.List;

View File

@ -14,22 +14,22 @@
*/ */
package sample.contact; package sample.contact;
import org.acegisecurity.Authentication; import org.springframework.security.Authentication;
import org.acegisecurity.acls.AccessControlEntry; import org.springframework.security.acls.AccessControlEntry;
import org.acegisecurity.acls.MutableAcl; import org.springframework.security.acls.MutableAcl;
import org.acegisecurity.acls.MutableAclService; import org.springframework.security.acls.MutableAclService;
import org.acegisecurity.acls.NotFoundException; import org.springframework.security.acls.NotFoundException;
import org.acegisecurity.acls.Permission; import org.springframework.security.acls.Permission;
import org.acegisecurity.acls.domain.BasePermission; import org.springframework.security.acls.domain.BasePermission;
import org.acegisecurity.acls.objectidentity.ObjectIdentity; import org.springframework.security.acls.objectidentity.ObjectIdentity;
import org.acegisecurity.acls.objectidentity.ObjectIdentityImpl; import org.springframework.security.acls.objectidentity.ObjectIdentityImpl;
import org.acegisecurity.acls.sid.PrincipalSid; import org.springframework.security.acls.sid.PrincipalSid;
import org.acegisecurity.acls.sid.Sid; import org.springframework.security.acls.sid.Sid;
import org.acegisecurity.context.SecurityContextHolder; import org.springframework.security.context.SecurityContextHolder;
import org.acegisecurity.userdetails.UserDetails; import org.springframework.security.userdetails.UserDetails;
import org.springframework.beans.factory.InitializingBean; import org.springframework.beans.factory.InitializingBean;
@ -84,7 +84,7 @@ public class ContactManagerBackend extends ApplicationObjectSupport implements C
contact.setId(new Long(counter++)); contact.setId(new Long(counter++));
contactDao.create(contact); contactDao.create(contact);
// Grant the current principal administrative permission to the contact // Grant the current principal administrative permission to the contact
addPermission(contact, new PrincipalSid(getUsername()), BasePermission.ADMINISTRATION); addPermission(contact, new PrincipalSid(getUsername()), BasePermission.ADMINISTRATION);
if (logger.isDebugEnabled()) { if (logger.isDebugEnabled()) {

View File

@ -14,22 +14,22 @@
*/ */
package sample.contact; package sample.contact;
import org.acegisecurity.Authentication; import org.springframework.security.Authentication;
import org.acegisecurity.GrantedAuthority; import org.springframework.security.GrantedAuthority;
import org.acegisecurity.GrantedAuthorityImpl; import org.springframework.security.GrantedAuthorityImpl;
import org.acegisecurity.acls.MutableAcl; import org.springframework.security.acls.MutableAcl;
import org.acegisecurity.acls.MutableAclService; import org.springframework.security.acls.MutableAclService;
import org.acegisecurity.acls.Permission; import org.springframework.security.acls.Permission;
import org.acegisecurity.acls.domain.AclImpl; import org.springframework.security.acls.domain.AclImpl;
import org.acegisecurity.acls.domain.BasePermission; import org.springframework.security.acls.domain.BasePermission;
import org.acegisecurity.acls.objectidentity.ObjectIdentity; import org.springframework.security.acls.objectidentity.ObjectIdentity;
import org.acegisecurity.acls.objectidentity.ObjectIdentityImpl; import org.springframework.security.acls.objectidentity.ObjectIdentityImpl;
import org.acegisecurity.acls.sid.PrincipalSid; import org.springframework.security.acls.sid.PrincipalSid;
import org.acegisecurity.context.SecurityContextHolder; import org.springframework.security.context.SecurityContextHolder;
import org.acegisecurity.providers.UsernamePasswordAuthenticationToken; import org.springframework.security.providers.UsernamePasswordAuthenticationToken;
import org.springframework.beans.factory.InitializingBean; import org.springframework.beans.factory.InitializingBean;
@ -111,7 +111,7 @@ public class DataSourcePopulator implements InitializingBean {
Encoded password for bill is "wombat" Encoded password for bill is "wombat"
Encoded password for bob is "wombat" Encoded password for bob is "wombat"
Encoded password for jane is "wombat" Encoded password for jane is "wombat"
*/ */
template.execute("INSERT INTO USERS VALUES('marissa','a564de63c2d0da68cf47586ee05984d7',TRUE);"); template.execute("INSERT INTO USERS VALUES('marissa','a564de63c2d0da68cf47586ee05984d7',TRUE);");
template.execute("INSERT INTO USERS VALUES('dianne','65d15fe9156f9c4bbffd98085992a44e',TRUE);"); template.execute("INSERT INTO USERS VALUES('dianne','65d15fe9156f9c4bbffd98085992a44e',TRUE);");

View File

@ -14,11 +14,11 @@
*/ */
package sample.contact; package sample.contact;
import org.acegisecurity.acls.AclService; import org.springframework.security.acls.AclService;
import org.acegisecurity.acls.Permission; import org.springframework.security.acls.Permission;
import org.acegisecurity.acls.domain.BasePermission; import org.springframework.security.acls.domain.BasePermission;
import org.acegisecurity.acls.sid.PrincipalSid; import org.springframework.security.acls.sid.PrincipalSid;
import org.acegisecurity.acls.sid.Sid; import org.springframework.security.acls.sid.Sid;
import org.springframework.beans.factory.InitializingBean; import org.springframework.beans.factory.InitializingBean;

View File

@ -22,63 +22,63 @@
<!-- ~~~~~~~~~~~~~~~~~~ "BEFORE INVOCATION" AUTHORIZATION DEFINITIONS ~~~~~~~~~~~~~~~~ --> <!-- ~~~~~~~~~~~~~~~~~~ "BEFORE INVOCATION" AUTHORIZATION DEFINITIONS ~~~~~~~~~~~~~~~~ -->
<!-- ACL permission masks used by this application --> <!-- ACL permission masks used by this application -->
<bean id="org.acegisecurity.acls.domain.BasePermission.ADMINISTRATION" <bean id="org.springframework.security.acls.domain.BasePermission.ADMINISTRATION"
class="org.springframework.beans.factory.config.FieldRetrievingFactoryBean"> class="org.springframework.beans.factory.config.FieldRetrievingFactoryBean">
<property name="staticField" value="org.acegisecurity.acls.domain.BasePermission.ADMINISTRATION"/> <property name="staticField" value="org.springframework.security.acls.domain.BasePermission.ADMINISTRATION"/>
</bean> </bean>
<bean id="org.acegisecurity.acls.domain.BasePermission.READ" <bean id="org.springframework.security.acls.domain.BasePermission.READ"
class="org.springframework.beans.factory.config.FieldRetrievingFactoryBean"> class="org.springframework.beans.factory.config.FieldRetrievingFactoryBean">
<property name="staticField" value="org.acegisecurity.acls.domain.BasePermission.READ"/> <property name="staticField" value="org.springframework.security.acls.domain.BasePermission.READ"/>
</bean> </bean>
<bean id="org.acegisecurity.acls.domain.BasePermission.DELETE" <bean id="org.springframework.security.acls.domain.BasePermission.DELETE"
class="org.springframework.beans.factory.config.FieldRetrievingFactoryBean"> class="org.springframework.beans.factory.config.FieldRetrievingFactoryBean">
<property name="staticField" value="org.acegisecurity.acls.domain.BasePermission.DELETE"/> <property name="staticField" value="org.springframework.security.acls.domain.BasePermission.DELETE"/>
</bean> </bean>
<!-- An access decision voter that reads ROLE_* configuration settings --> <!-- An access decision voter that reads ROLE_* configuration settings -->
<bean id="roleVoter" class="org.acegisecurity.vote.RoleVoter"/> <bean id="roleVoter" class="org.springframework.security.vote.RoleVoter"/>
<!-- An access decision voter that reads ACL_CONTACT_READ configuration settings --> <!-- An access decision voter that reads ACL_CONTACT_READ configuration settings -->
<bean id="aclContactReadVoter" class="org.acegisecurity.vote.AclEntryVoter"> <bean id="aclContactReadVoter" class="org.springframework.security.vote.AclEntryVoter">
<constructor-arg ref="aclService"/> <constructor-arg ref="aclService"/>
<constructor-arg value="ACL_CONTACT_READ"/> <constructor-arg value="ACL_CONTACT_READ"/>
<constructor-arg> <constructor-arg>
<list> <list>
<ref local="org.acegisecurity.acls.domain.BasePermission.ADMINISTRATION"/> <ref local="org.springframework.security.acls.domain.BasePermission.ADMINISTRATION"/>
<ref local="org.acegisecurity.acls.domain.BasePermission.READ"/> <ref local="org.springframework.security.acls.domain.BasePermission.READ"/>
</list> </list>
</constructor-arg> </constructor-arg>
<property name="processDomainObjectClass" value="sample.contact.Contact"/> <property name="processDomainObjectClass" value="sample.contact.Contact"/>
</bean> </bean>
<!-- An access decision voter that reads ACL_CONTACT_DELETE configuration settings --> <!-- An access decision voter that reads ACL_CONTACT_DELETE configuration settings -->
<bean id="aclContactDeleteVoter" class="org.acegisecurity.vote.AclEntryVoter"> <bean id="aclContactDeleteVoter" class="org.springframework.security.vote.AclEntryVoter">
<constructor-arg ref="aclService"/> <constructor-arg ref="aclService"/>
<constructor-arg value="ACL_CONTACT_DELETE"/> <constructor-arg value="ACL_CONTACT_DELETE"/>
<constructor-arg> <constructor-arg>
<list> <list>
<ref local="org.acegisecurity.acls.domain.BasePermission.ADMINISTRATION"/> <ref local="org.springframework.security.acls.domain.BasePermission.ADMINISTRATION"/>
<ref local="org.acegisecurity.acls.domain.BasePermission.DELETE"/> <ref local="org.springframework.security.acls.domain.BasePermission.DELETE"/>
</list> </list>
</constructor-arg> </constructor-arg>
<property name="processDomainObjectClass" value="sample.contact.Contact"/> <property name="processDomainObjectClass" value="sample.contact.Contact"/>
</bean> </bean>
<!-- An access decision voter that reads ACL_CONTACT_ADMIN configuration settings --> <!-- An access decision voter that reads ACL_CONTACT_ADMIN configuration settings -->
<bean id="aclContactAdminVoter" class="org.acegisecurity.vote.AclEntryVoter"> <bean id="aclContactAdminVoter" class="org.springframework.security.vote.AclEntryVoter">
<constructor-arg ref="aclService"/> <constructor-arg ref="aclService"/>
<constructor-arg value="ACL_CONTACT_ADMIN"/> <constructor-arg value="ACL_CONTACT_ADMIN"/>
<constructor-arg> <constructor-arg>
<list> <list>
<ref local="org.acegisecurity.acls.domain.BasePermission.ADMINISTRATION"/> <ref local="org.springframework.security.acls.domain.BasePermission.ADMINISTRATION"/>
</list> </list>
</constructor-arg> </constructor-arg>
<property name="processDomainObjectClass" value="sample.contact.Contact"/> <property name="processDomainObjectClass" value="sample.contact.Contact"/>
</bean> </bean>
<!-- An access decision manager used by the business objects --> <!-- An access decision manager used by the business objects -->
<bean id="businessAccessDecisionManager" class="org.acegisecurity.vote.AffirmativeBased"> <bean id="businessAccessDecisionManager" class="org.springframework.security.vote.AffirmativeBased">
<property name="allowIfAllAbstainDecisions" value="false"/> <property name="allowIfAllAbstainDecisions" value="false"/>
<property name="decisionVoters"> <property name="decisionVoters">
<list> <list>
@ -92,7 +92,7 @@
<!-- ========= ACCESS CONTROL LIST LOOKUP MANAGER DEFINITIONS ========= --> <!-- ========= ACCESS CONTROL LIST LOOKUP MANAGER DEFINITIONS ========= -->
<bean id="aclCache" class="org.acegisecurity.acls.jdbc.EhCacheBasedAclCache"> <bean id="aclCache" class="org.springframework.security.acls.jdbc.EhCacheBasedAclCache">
<constructor-arg> <constructor-arg>
<bean class="org.springframework.cache.ehcache.EhCacheFactoryBean"> <bean class="org.springframework.cache.ehcache.EhCacheFactoryBean">
<property name="cacheManager"> <property name="cacheManager">
@ -103,32 +103,32 @@
</constructor-arg> </constructor-arg>
</bean> </bean>
<bean id="lookupStrategy" class="org.acegisecurity.acls.jdbc.BasicLookupStrategy"> <bean id="lookupStrategy" class="org.springframework.security.acls.jdbc.BasicLookupStrategy">
<constructor-arg ref="dataSource"/> <constructor-arg ref="dataSource"/>
<constructor-arg ref="aclCache"/> <constructor-arg ref="aclCache"/>
<constructor-arg ref="aclAuthorizationStrategy"/> <constructor-arg ref="aclAuthorizationStrategy"/>
<constructor-arg> <constructor-arg>
<bean class="org.acegisecurity.acls.domain.ConsoleAuditLogger"/> <bean class="org.springframework.security.acls.domain.ConsoleAuditLogger"/>
</constructor-arg> </constructor-arg>
</bean> </bean>
<bean id="aclAuthorizationStrategy" class="org.acegisecurity.acls.domain.AclAuthorizationStrategyImpl"> <bean id="aclAuthorizationStrategy" class="org.springframework.security.acls.domain.AclAuthorizationStrategyImpl">
<constructor-arg> <constructor-arg>
<list> <list>
<bean class="org.acegisecurity.GrantedAuthorityImpl"> <bean class="org.springframework.security.GrantedAuthorityImpl">
<constructor-arg value="ROLE_ADMINISTRATOR"/> <constructor-arg value="ROLE_ADMINISTRATOR"/>
</bean> </bean>
<bean class="org.acegisecurity.GrantedAuthorityImpl"> <bean class="org.springframework.security.GrantedAuthorityImpl">
<constructor-arg value="ROLE_ADMINISTRATOR"/> <constructor-arg value="ROLE_ADMINISTRATOR"/>
</bean> </bean>
<bean class="org.acegisecurity.GrantedAuthorityImpl"> <bean class="org.springframework.security.GrantedAuthorityImpl">
<constructor-arg value="ROLE_ADMINISTRATOR"/> <constructor-arg value="ROLE_ADMINISTRATOR"/>
</bean> </bean>
</list> </list>
</constructor-arg> </constructor-arg>
</bean> </bean>
<bean id="aclService" class="org.acegisecurity.acls.jdbc.JdbcMutableAclService"> <bean id="aclService" class="org.springframework.security.acls.jdbc.JdbcMutableAclService">
<constructor-arg ref="dataSource"/> <constructor-arg ref="dataSource"/>
<constructor-arg ref="lookupStrategy"/> <constructor-arg ref="lookupStrategy"/>
<constructor-arg ref="aclCache"/> <constructor-arg ref="aclCache"/>
@ -136,7 +136,7 @@
<!-- ============== "AFTER INTERCEPTION" AUTHORIZATION DEFINITIONS =========== --> <!-- ============== "AFTER INTERCEPTION" AUTHORIZATION DEFINITIONS =========== -->
<bean id="afterInvocationManager" class="org.acegisecurity.afterinvocation.AfterInvocationProviderManager"> <bean id="afterInvocationManager" class="org.springframework.security.afterinvocation.AfterInvocationProviderManager">
<property name="providers"> <property name="providers">
<list> <list>
<ref local="afterAclRead"/> <ref local="afterAclRead"/>
@ -147,27 +147,27 @@
<!-- Processes AFTER_ACL_COLLECTION_READ configuration settings --> <!-- Processes AFTER_ACL_COLLECTION_READ configuration settings -->
<bean id="afterAclCollectionRead" <bean id="afterAclCollectionRead"
class="org.acegisecurity.afterinvocation.AclEntryAfterInvocationCollectionFilteringProvider"> class="org.springframework.security.afterinvocation.AclEntryAfterInvocationCollectionFilteringProvider">
<constructor-arg> <constructor-arg>
<ref bean="aclService"/> <ref bean="aclService"/>
</constructor-arg> </constructor-arg>
<constructor-arg> <constructor-arg>
<list> <list>
<ref local="org.acegisecurity.acls.domain.BasePermission.ADMINISTRATION"/> <ref local="org.springframework.security.acls.domain.BasePermission.ADMINISTRATION"/>
<ref local="org.acegisecurity.acls.domain.BasePermission.READ"/> <ref local="org.springframework.security.acls.domain.BasePermission.READ"/>
</list> </list>
</constructor-arg> </constructor-arg>
</bean> </bean>
<!-- Processes AFTER_ACL_READ configuration settings --> <!-- Processes AFTER_ACL_READ configuration settings -->
<bean id="afterAclRead" class="org.acegisecurity.afterinvocation.AclEntryAfterInvocationProvider"> <bean id="afterAclRead" class="org.springframework.security.afterinvocation.AclEntryAfterInvocationProvider">
<constructor-arg> <constructor-arg>
<ref bean="aclService"/> <ref bean="aclService"/>
</constructor-arg> </constructor-arg>
<constructor-arg> <constructor-arg>
<list> <list>
<ref local="org.acegisecurity.acls.domain.BasePermission.ADMINISTRATION"/> <ref local="org.springframework.security.acls.domain.BasePermission.ADMINISTRATION"/>
<ref local="org.acegisecurity.acls.domain.BasePermission.READ"/> <ref local="org.springframework.security.acls.domain.BasePermission.READ"/>
</list> </list>
</constructor-arg> </constructor-arg>
</bean> </bean>
@ -184,7 +184,7 @@
ACL_CONTACT_READ attribute, which also ensures the user has permission ACL_CONTACT_READ attribute, which also ensures the user has permission
to the Contact presented as a method argument. to the Contact presented as a method argument.
--> -->
<bean id="contactManagerSecurity" class="org.acegisecurity.intercept.method.aopalliance.MethodSecurityInterceptor"> <bean id="contactManagerSecurity" class="org.springframework.security.intercept.method.aopalliance.MethodSecurityInterceptor">
<property name="authenticationManager" ref="authenticationManager"/> <property name="authenticationManager" ref="authenticationManager"/>
<property name="accessDecisionManager"> <property name="accessDecisionManager">
<ref local="businessAccessDecisionManager"/> <ref local="businessAccessDecisionManager"/>

View File

@ -14,7 +14,7 @@
<!-- ======================== FILTER CHAIN ======================= --> <!-- ======================== FILTER CHAIN ======================= -->
<bean id="filterChainProxy" class="org.acegisecurity.util.FilterChainProxy"> <bean id="filterChainProxy" class="org.springframework.security.util.FilterChainProxy">
<property name="filterInvocationDefinitionSource"> <property name="filterInvocationDefinitionSource">
<value> <value>
CONVERT_URL_TO_LOWERCASE_BEFORE_COMPARISON CONVERT_URL_TO_LOWERCASE_BEFORE_COMPARISON
@ -26,7 +26,7 @@
<!-- ======================== AUTHENTICATION ======================= --> <!-- ======================== AUTHENTICATION ======================= -->
<bean id="authenticationManager" class="org.acegisecurity.providers.ProviderManager"> <bean id="authenticationManager" class="org.springframework.security.providers.ProviderManager">
<property name="providers"> <property name="providers">
<list> <list>
<ref local="casAuthenticationProvider"/> <ref local="casAuthenticationProvider"/>
@ -34,22 +34,22 @@
</property> </property>
</bean> </bean>
<bean id="jdbcDaoImpl" class="org.acegisecurity.userdetails.jdbc.JdbcDaoImpl"> <bean id="jdbcDaoImpl" class="org.springframework.security.userdetails.jdbc.JdbcDaoImpl">
<property name="dataSource" ref="dataSource"/> <property name="dataSource" ref="dataSource"/>
</bean> </bean>
<bean id="basicProcessingFilter" class="org.acegisecurity.ui.basicauth.BasicProcessingFilter"> <bean id="basicProcessingFilter" class="org.springframework.security.ui.basicauth.BasicProcessingFilter">
<property name="authenticationManager"><ref local="authenticationManager"/></property> <property name="authenticationManager"><ref local="authenticationManager"/></property>
<property name="authenticationEntryPoint"><ref local="basicProcessingFilterEntryPoint"/></property> <property name="authenticationEntryPoint"><ref local="basicProcessingFilterEntryPoint"/></property>
</bean> </bean>
<bean id="basicProcessingFilterEntryPoint" class="org.acegisecurity.ui.basicauth.BasicProcessingFilterEntryPoint"> <bean id="basicProcessingFilterEntryPoint" class="org.springframework.security.ui.basicauth.BasicProcessingFilterEntryPoint">
<property name="realmName"><value>Contacts Realm</value></property> <property name="realmName"><value>Contacts Realm</value></property>
</bean> </bean>
<bean id="httpSessionContextIntegrationFilter" class="org.acegisecurity.context.HttpSessionContextIntegrationFilter"/> <bean id="httpSessionContextIntegrationFilter" class="org.springframework.security.context.HttpSessionContextIntegrationFilter"/>
<bean id="casAuthenticationProvider" class="org.acegisecurity.providers.cas.CasAuthenticationProvider"> <bean id="casAuthenticationProvider" class="org.springframework.security.providers.cas.CasAuthenticationProvider">
<property name="casAuthoritiesPopulator"><ref local="casAuthoritiesPopulator"/></property> <property name="casAuthoritiesPopulator"><ref local="casAuthoritiesPopulator"/></property>
<property name="casProxyDecider"><ref local="casProxyDecider"/></property> <property name="casProxyDecider"><ref local="casProxyDecider"/></property>
<property name="ticketValidator"><ref local="casProxyTicketValidator"/></property> <property name="ticketValidator"><ref local="casProxyTicketValidator"/></property>
@ -57,7 +57,7 @@
<property name="key"><value>my_password_for_this_auth_provider_only</value></property> <property name="key"><value>my_password_for_this_auth_provider_only</value></property>
</bean> </bean>
<bean id="casProxyTicketValidator" class="org.acegisecurity.providers.cas.ticketvalidator.CasProxyTicketValidator"> <bean id="casProxyTicketValidator" class="org.springframework.security.providers.cas.ticketvalidator.CasProxyTicketValidator">
<property name="casValidate" value="https://localhost:8443/cas/proxyValidate"/> <property name="casValidate" value="https://localhost:8443/cas/proxyValidate"/>
<property name="proxyCallbackUrl" value="https://localhost:8443/contacts-cas/casProxy/receptor"/> <property name="proxyCallbackUrl" value="https://localhost:8443/contacts-cas/casProxy/receptor"/>
<property name="serviceProperties"><ref local="serviceProperties"/></property> <property name="serviceProperties"><ref local="serviceProperties"/></property>
@ -71,27 +71,27 @@
<property name="cacheName" value="ticketCache"/> <property name="cacheName" value="ticketCache"/>
</bean> </bean>
<bean id="statelessTicketCache" class="org.acegisecurity.providers.cas.cache.EhCacheBasedTicketCache"> <bean id="statelessTicketCache" class="org.springframework.security.providers.cas.cache.EhCacheBasedTicketCache">
<property name="cache"><ref local="ticketCacheBackend"/></property> <property name="cache"><ref local="ticketCacheBackend"/></property>
</bean> </bean>
<bean id="casAuthoritiesPopulator" class="org.acegisecurity.providers.cas.populator.DaoCasAuthoritiesPopulator"> <bean id="casAuthoritiesPopulator" class="org.springframework.security.providers.cas.populator.DaoCasAuthoritiesPopulator">
<property name="userDetailsService"><ref local="jdbcDaoImpl"/></property> <property name="userDetailsService"><ref local="jdbcDaoImpl"/></property>
</bean> </bean>
<bean id="casProxyDecider" class="org.acegisecurity.providers.cas.proxy.RejectProxyTickets"/> <bean id="casProxyDecider" class="org.springframework.security.providers.cas.proxy.RejectProxyTickets"/>
<bean id="serviceProperties" class="org.acegisecurity.ui.cas.ServiceProperties"> <bean id="serviceProperties" class="org.springframework.security.ui.cas.ServiceProperties">
<property name="service" value="https://localhost:8443/contacts-cas/j_acegi_cas_security_check"/> <property name="service" value="https://localhost:8443/contacts-cas/j_acegi_cas_security_check"/>
<property name="sendRenew" value="false"/> <property name="sendRenew" value="false"/>
</bean> </bean>
<!-- note logout has little impact, due to CAS reauthentication functionality (it will cause a refresh of the authentication though) --> <!-- note logout has little impact, due to CAS reauthentication functionality (it will cause a refresh of the authentication though) -->
<bean id="logoutFilter" class="org.acegisecurity.ui.logout.LogoutFilter"> <bean id="logoutFilter" class="org.springframework.security.ui.logout.LogoutFilter">
<constructor-arg value="/index.jsp"/> <!-- URL redirected to after logout --> <constructor-arg value="/index.jsp"/> <!-- URL redirected to after logout -->
<constructor-arg> <constructor-arg>
<list> <list>
<bean class="org.acegisecurity.ui.logout.SecurityContextLogoutHandler"/> <bean class="org.springframework.security.ui.logout.SecurityContextLogoutHandler"/>
</list> </list>
</constructor-arg> </constructor-arg>
</bean> </bean>
@ -100,7 +100,7 @@
<!-- ===================== HTTP CHANNEL REQUIREMENTS ==================== --> <!-- ===================== HTTP CHANNEL REQUIREMENTS ==================== -->
<!-- Enabled by default for CAS, as a CAS deployment uses HTTPS --> <!-- Enabled by default for CAS, as a CAS deployment uses HTTPS -->
<bean id="channelProcessingFilter" class="org.acegisecurity.securechannel.ChannelProcessingFilter"> <bean id="channelProcessingFilter" class="org.springframework.security.securechannel.ChannelProcessingFilter">
<property name="channelDecisionManager"><ref local="channelDecisionManager"/></property> <property name="channelDecisionManager"><ref local="channelDecisionManager"/></property>
<property name="filterInvocationDefinitionSource"> <property name="filterInvocationDefinitionSource">
<value> <value>
@ -112,7 +112,7 @@
</property> </property>
</bean> </bean>
<bean id="channelDecisionManager" class="org.acegisecurity.securechannel.ChannelDecisionManagerImpl"> <bean id="channelDecisionManager" class="org.springframework.security.securechannel.ChannelDecisionManagerImpl">
<property name="channelProcessors"> <property name="channelProcessors">
<list> <list>
<ref local="secureChannelProcessor"/> <ref local="secureChannelProcessor"/>
@ -121,28 +121,28 @@
</property> </property>
</bean> </bean>
<bean id="secureChannelProcessor" class="org.acegisecurity.securechannel.SecureChannelProcessor"/> <bean id="secureChannelProcessor" class="org.springframework.security.securechannel.SecureChannelProcessor"/>
<bean id="insecureChannelProcessor" class="org.acegisecurity.securechannel.InsecureChannelProcessor"/> <bean id="insecureChannelProcessor" class="org.springframework.security.securechannel.InsecureChannelProcessor"/>
<!-- ===================== HTTP REQUEST SECURITY ==================== --> <!-- ===================== HTTP REQUEST SECURITY ==================== -->
<bean id="exceptionTranslationFilter" class="org.acegisecurity.ui.ExceptionTranslationFilter"> <bean id="exceptionTranslationFilter" class="org.springframework.security.ui.ExceptionTranslationFilter">
<property name="authenticationEntryPoint"><ref local="casProcessingFilterEntryPoint"/></property> <property name="authenticationEntryPoint"><ref local="casProcessingFilterEntryPoint"/></property>
</bean> </bean>
<bean id="casProcessingFilter" class="org.acegisecurity.ui.cas.CasProcessingFilter"> <bean id="casProcessingFilter" class="org.springframework.security.ui.cas.CasProcessingFilter">
<property name="authenticationManager"><ref local="authenticationManager"/></property> <property name="authenticationManager"><ref local="authenticationManager"/></property>
<property name="authenticationFailureUrl"><value>/casfailed.jsp</value></property> <property name="authenticationFailureUrl"><value>/casfailed.jsp</value></property>
<property name="defaultTargetUrl"><value>/</value></property> <property name="defaultTargetUrl"><value>/</value></property>
<property name="filterProcessesUrl"><value>/j_acegi_cas_security_check</value></property> <property name="filterProcessesUrl"><value>/j_acegi_cas_security_check</value></property>
</bean> </bean>
<bean id="casProcessingFilterEntryPoint" class="org.acegisecurity.ui.cas.CasProcessingFilterEntryPoint"> <bean id="casProcessingFilterEntryPoint" class="org.springframework.security.ui.cas.CasProcessingFilterEntryPoint">
<property name="loginUrl"><value>https://localhost:8443/cas/login</value></property> <property name="loginUrl"><value>https://localhost:8443/cas/login</value></property>
<property name="serviceProperties"><ref local="serviceProperties"/></property> <property name="serviceProperties"><ref local="serviceProperties"/></property>
</bean> </bean>
<bean id="httpRequestAccessDecisionManager" class="org.acegisecurity.vote.AffirmativeBased"> <bean id="httpRequestAccessDecisionManager" class="org.springframework.security.vote.AffirmativeBased">
<property name="allowIfAllAbstainDecisions"><value>false</value></property> <property name="allowIfAllAbstainDecisions"><value>false</value></property>
<property name="decisionVoters"> <property name="decisionVoters">
<list> <list>
@ -154,7 +154,7 @@
<!-- Note the order that entries are placed against the objectDefinitionSource is critical. <!-- 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. 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 --> 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"> <bean id="filterInvocationInterceptor" class="org.springframework.security.intercept.web.FilterSecurityInterceptor">
<property name="authenticationManager"><ref local="authenticationManager"/></property> <property name="authenticationManager"><ref local="authenticationManager"/></property>
<property name="accessDecisionManager"><ref local="httpRequestAccessDecisionManager"/></property> <property name="accessDecisionManager"><ref local="httpRequestAccessDecisionManager"/></property>
<property name="objectDefinitionSource"> <property name="objectDefinitionSource">

View File

@ -16,7 +16,7 @@
<!-- if you wish to use channel security, add "channelProcessingFilter," in front <!-- if you wish to use channel security, add "channelProcessingFilter," in front
of "httpSessionContextIntegrationFilter" in the list below --> of "httpSessionContextIntegrationFilter" in the list below -->
<bean id="filterChainProxy" class="org.acegisecurity.util.FilterChainProxy"> <bean id="filterChainProxy" class="org.springframework.security.util.FilterChainProxy">
<property name="filterInvocationDefinitionSource"> <property name="filterInvocationDefinitionSource">
<value> <value>
CONVERT_URL_TO_LOWERCASE_BEFORE_COMPARISON CONVERT_URL_TO_LOWERCASE_BEFORE_COMPARISON
@ -28,7 +28,7 @@
<!-- ======================== AUTHENTICATION ======================= --> <!-- ======================== AUTHENTICATION ======================= -->
<bean id="authenticationManager" class="org.acegisecurity.providers.ProviderManager"> <bean id="authenticationManager" class="org.springframework.security.providers.ProviderManager">
<property name="providers"> <property name="providers">
<list> <list>
<ref local="ldapAuthenticationProvider"/> <ref local="ldapAuthenticationProvider"/>
@ -36,21 +36,21 @@
</property> </property>
</bean> </bean>
<bean id="initialDirContextFactory" class="org.acegisecurity.ldap.DefaultInitialDirContextFactory"> <bean id="initialDirContextFactory" class="org.springframework.security.ldap.DefaultInitialDirContextFactory">
<constructor-arg value="ldap://monkeymachine.co.uk:389/dc=acegisecurity,dc=org"/> <constructor-arg value="ldap://monkeymachine.co.uk:389/dc=acegisecurity,dc=org"/>
<property name="managerDn" value="cn=manager,dc=acegisecurity,dc=org" /> <property name="managerDn" value="cn=manager,dc=acegisecurity,dc=org" />
<property name="managerPassword" value="acegisecurity"/> <property name="managerPassword" value="acegisecurity"/>
</bean> </bean>
<bean id="ldapAuthenticationProvider" class="org.acegisecurity.providers.ldap.LdapAuthenticationProvider"> <bean id="ldapAuthenticationProvider" class="org.springframework.security.providers.ldap.LdapAuthenticationProvider">
<constructor-arg> <constructor-arg>
<bean class="org.acegisecurity.providers.ldap.authenticator.BindAuthenticator"> <bean class="org.springframework.security.providers.ldap.authenticator.BindAuthenticator">
<constructor-arg><ref local="initialDirContextFactory"/></constructor-arg> <constructor-arg><ref local="initialDirContextFactory"/></constructor-arg>
<property name="userDnPatterns"><list><value>uid={0},ou=people</value></list></property> <property name="userDnPatterns"><list><value>uid={0},ou=people</value></list></property>
</bean> </bean>
</constructor-arg> </constructor-arg>
<constructor-arg> <constructor-arg>
<bean class="org.acegisecurity.providers.ldap.populator.DefaultLdapAuthoritiesPopulator"> <bean class="org.springframework.security.providers.ldap.populator.DefaultLdapAuthoritiesPopulator">
<constructor-arg><ref local="initialDirContextFactory"/></constructor-arg> <constructor-arg><ref local="initialDirContextFactory"/></constructor-arg>
<constructor-arg><value>ou=groups</value></constructor-arg> <constructor-arg><value>ou=groups</value></constructor-arg>
<property name="groupRoleAttribute"><value>ou</value></property> <property name="groupRoleAttribute"><value>ou</value></property>
@ -59,16 +59,16 @@
</bean> </bean>
<!-- Automatically receives AuthenticationEvent messages --> <!-- Automatically receives AuthenticationEvent messages -->
<bean id="loggerListener" class="org.acegisecurity.event.authentication.LoggerListener"/> <bean id="loggerListener" class="org.springframework.security.event.authentication.LoggerListener"/>
<bean id="httpSessionContextIntegrationFilter" class="org.acegisecurity.context.HttpSessionContextIntegrationFilter"> <bean id="httpSessionContextIntegrationFilter" class="org.springframework.security.context.HttpSessionContextIntegrationFilter">
</bean> </bean>
<bean id="logoutFilter" class="org.acegisecurity.ui.logout.LogoutFilter"> <bean id="logoutFilter" class="org.springframework.security.ui.logout.LogoutFilter">
<constructor-arg value="/index.jsp"/> <!-- URL redirected to after logout --> <constructor-arg value="/index.jsp"/> <!-- URL redirected to after logout -->
<constructor-arg> <constructor-arg>
<list> <list>
<bean class="org.acegisecurity.ui.logout.SecurityContextLogoutHandler"/> <bean class="org.springframework.security.ui.logout.SecurityContextLogoutHandler"/>
</list> </list>
</constructor-arg> </constructor-arg>
</bean> </bean>
@ -76,23 +76,23 @@
<!-- ===================== HTTP REQUEST SECURITY ==================== --> <!-- ===================== HTTP REQUEST SECURITY ==================== -->
<bean id="exceptionTranslationFilter" class="org.acegisecurity.ui.ExceptionTranslationFilter"> <bean id="exceptionTranslationFilter" class="org.springframework.security.ui.ExceptionTranslationFilter">
<property name="authenticationEntryPoint"><ref local="authenticationProcessingFilterEntryPoint"/></property> <property name="authenticationEntryPoint"><ref local="authenticationProcessingFilterEntryPoint"/></property>
</bean> </bean>
<bean id="authenticationProcessingFilter" class="org.acegisecurity.ui.webapp.AuthenticationProcessingFilter"> <bean id="authenticationProcessingFilter" class="org.springframework.security.ui.webapp.AuthenticationProcessingFilter">
<property name="authenticationManager"><ref bean="authenticationManager"/></property> <property name="authenticationManager"><ref bean="authenticationManager"/></property>
<property name="authenticationFailureUrl"><value>/acegilogin.jsp?login_error=1</value></property> <property name="authenticationFailureUrl"><value>/acegilogin.jsp?login_error=1</value></property>
<property name="defaultTargetUrl"><value>/</value></property> <property name="defaultTargetUrl"><value>/</value></property>
<property name="filterProcessesUrl"><value>/j_acegi_security_check</value></property> <property name="filterProcessesUrl"><value>/j_acegi_security_check</value></property>
</bean> </bean>
<bean id="authenticationProcessingFilterEntryPoint" class="org.acegisecurity.ui.webapp.AuthenticationProcessingFilterEntryPoint"> <bean id="authenticationProcessingFilterEntryPoint" class="org.springframework.security.ui.webapp.AuthenticationProcessingFilterEntryPoint">
<property name="loginFormUrl"><value>/acegilogin.jsp</value></property> <property name="loginFormUrl"><value>/acegilogin.jsp</value></property>
<property name="forceHttps"><value>false</value></property> <property name="forceHttps"><value>false</value></property>
</bean> </bean>
<bean id="httpRequestAccessDecisionManager" class="org.acegisecurity.vote.AffirmativeBased"> <bean id="httpRequestAccessDecisionManager" class="org.springframework.security.vote.AffirmativeBased">
<property name="allowIfAllAbstainDecisions"><value>false</value></property> <property name="allowIfAllAbstainDecisions"><value>false</value></property>
<property name="decisionVoters"> <property name="decisionVoters">
<list> <list>
@ -104,7 +104,7 @@
<!-- Note the order that entries are placed against the objectDefinitionSource is critical. <!-- 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. 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 --> 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"> <bean id="filterInvocationInterceptor" class="org.springframework.security.intercept.web.FilterSecurityInterceptor">
<property name="authenticationManager"><ref local="authenticationManager"/></property> <property name="authenticationManager"><ref local="authenticationManager"/></property>
<property name="accessDecisionManager"><ref local="httpRequestAccessDecisionManager"/></property> <property name="accessDecisionManager"><ref local="httpRequestAccessDecisionManager"/></property>
<property name="objectDefinitionSource"> <property name="objectDefinitionSource">

View File

@ -14,7 +14,7 @@
<!-- ======================== FILTER CHAIN ======================= --> <!-- ======================== FILTER CHAIN ======================= -->
<bean id="filterChainProxy" class="org.acegisecurity.util.FilterChainProxy"> <bean id="filterChainProxy" class="org.springframework.security.util.FilterChainProxy">
<property name="filterInvocationDefinitionSource"> <property name="filterInvocationDefinitionSource">
<value> <value>
CONVERT_URL_TO_LOWERCASE_BEFORE_COMPARISON CONVERT_URL_TO_LOWERCASE_BEFORE_COMPARISON
@ -26,7 +26,7 @@
<!-- ======================== AUTHENTICATION ======================= --> <!-- ======================== AUTHENTICATION ======================= -->
<bean id="authenticationManager" class="org.acegisecurity.providers.ProviderManager"> <bean id="authenticationManager" class="org.springframework.security.providers.ProviderManager">
<property name="providers"> <property name="providers">
<list> <list>
<ref local="x509AuthenticationProvider"/> <ref local="x509AuthenticationProvider"/>
@ -34,23 +34,23 @@
</property> </property>
</bean> </bean>
<bean id="jdbcDaoImpl" class="org.acegisecurity.userdetails.jdbc.JdbcDaoImpl"> <bean id="jdbcDaoImpl" class="org.springframework.security.userdetails.jdbc.JdbcDaoImpl">
<property name="dataSource"><ref bean="dataSource"/></property> <property name="dataSource"><ref bean="dataSource"/></property>
</bean> </bean>
<bean id="basicProcessingFilter" class="org.acegisecurity.ui.basicauth.BasicProcessingFilter"> <bean id="basicProcessingFilter" class="org.springframework.security.ui.basicauth.BasicProcessingFilter">
<property name="authenticationManager"><ref local="authenticationManager"/></property> <property name="authenticationManager"><ref local="authenticationManager"/></property>
<property name="authenticationEntryPoint"><ref local="basicProcessingFilterEntryPoint"/></property> <property name="authenticationEntryPoint"><ref local="basicProcessingFilterEntryPoint"/></property>
</bean> </bean>
<bean id="basicProcessingFilterEntryPoint" class="org.acegisecurity.ui.basicauth.BasicProcessingFilterEntryPoint"> <bean id="basicProcessingFilterEntryPoint" class="org.springframework.security.ui.basicauth.BasicProcessingFilterEntryPoint">
<property name="realmName"><value>Contacts Realm</value></property> <property name="realmName"><value>Contacts Realm</value></property>
</bean> </bean>
<bean id="httpSessionContextIntegrationFilter" class="org.acegisecurity.context.HttpSessionContextIntegrationFilter"> <bean id="httpSessionContextIntegrationFilter" class="org.springframework.security.context.HttpSessionContextIntegrationFilter">
</bean> </bean>
<bean id="x509AuthenticationProvider" class="org.acegisecurity.providers.x509.X509AuthenticationProvider"> <bean id="x509AuthenticationProvider" class="org.springframework.security.providers.x509.X509AuthenticationProvider">
<property name="x509AuthoritiesPopulator"><ref local="x509AuthoritiesPopulator"/></property> <property name="x509AuthoritiesPopulator"><ref local="x509AuthoritiesPopulator"/></property>
<property name="x509UserCache"><ref local="x509UserCache"/></property> <property name="x509UserCache"><ref local="x509UserCache"/></property>
</bean> </bean>
@ -66,21 +66,21 @@
</property> </property>
</bean> </bean>
<bean id="x509UserCache" class="org.acegisecurity.providers.x509.cache.EhCacheBasedX509UserCache"> <bean id="x509UserCache" class="org.springframework.security.providers.x509.cache.EhCacheBasedX509UserCache">
<property name="cache"><ref local="x509UserCacheBackend"/></property> <property name="cache"><ref local="x509UserCacheBackend"/></property>
</bean> </bean>
<bean id="x509AuthoritiesPopulator" class="org.acegisecurity.providers.x509.populator.DaoX509AuthoritiesPopulator"> <bean id="x509AuthoritiesPopulator" class="org.springframework.security.providers.x509.populator.DaoX509AuthoritiesPopulator">
<property name="userDetailsService"><ref local="jdbcDaoImpl"/></property> <property name="userDetailsService"><ref local="jdbcDaoImpl"/></property>
<!-- <property name="subjectDNRegex"><value>emailAddress=(.*?),</value></property> --> <!-- <property name="subjectDNRegex"><value>emailAddress=(.*?),</value></property> -->
</bean> </bean>
<!-- note logout has little impact, due to X509 certificate still being presented (it will cause a refresh of the authentication though) --> <!-- note logout has little impact, due to X509 certificate still being presented (it will cause a refresh of the authentication though) -->
<bean id="logoutFilter" class="org.acegisecurity.ui.logout.LogoutFilter"> <bean id="logoutFilter" class="org.springframework.security.ui.logout.LogoutFilter">
<constructor-arg value="/index.jsp"/> <!-- URL redirected to after logout --> <constructor-arg value="/index.jsp"/> <!-- URL redirected to after logout -->
<constructor-arg> <constructor-arg>
<list> <list>
<bean class="org.acegisecurity.ui.logout.SecurityContextLogoutHandler"/> <bean class="org.springframework.security.ui.logout.SecurityContextLogoutHandler"/>
</list> </list>
</constructor-arg> </constructor-arg>
</bean> </bean>
@ -89,7 +89,7 @@
<!-- ===================== HTTP CHANNEL REQUIREMENTS ==================== --> <!-- ===================== HTTP CHANNEL REQUIREMENTS ==================== -->
<!-- Enabled by default for X.509 (obviously) --> <!-- Enabled by default for X.509 (obviously) -->
<bean id="channelProcessingFilter" class="org.acegisecurity.securechannel.ChannelProcessingFilter"> <bean id="channelProcessingFilter" class="org.springframework.security.securechannel.ChannelProcessingFilter">
<property name="channelDecisionManager"><ref local="channelDecisionManager"/></property> <property name="channelDecisionManager"><ref local="channelDecisionManager"/></property>
<property name="filterInvocationDefinitionSource"> <property name="filterInvocationDefinitionSource">
<value> <value>
@ -100,7 +100,7 @@
</property> </property>
</bean> </bean>
<bean id="channelDecisionManager" class="org.acegisecurity.securechannel.ChannelDecisionManagerImpl"> <bean id="channelDecisionManager" class="org.springframework.security.securechannel.ChannelDecisionManagerImpl">
<property name="channelProcessors"> <property name="channelProcessors">
<list> <list>
<ref local="secureChannelProcessor"/> <ref local="secureChannelProcessor"/>
@ -109,23 +109,23 @@
</property> </property>
</bean> </bean>
<bean id="secureChannelProcessor" class="org.acegisecurity.securechannel.SecureChannelProcessor"/> <bean id="secureChannelProcessor" class="org.springframework.security.securechannel.SecureChannelProcessor"/>
<bean id="insecureChannelProcessor" class="org.acegisecurity.securechannel.InsecureChannelProcessor"/> <bean id="insecureChannelProcessor" class="org.springframework.security.securechannel.InsecureChannelProcessor"/>
<!-- ===================== HTTP REQUEST SECURITY ==================== --> <!-- ===================== HTTP REQUEST SECURITY ==================== -->
<bean id="exceptionTranslationFilter" class="org.acegisecurity.ui.ExceptionTranslationFilter"> <bean id="exceptionTranslationFilter" class="org.springframework.security.ui.ExceptionTranslationFilter">
<property name="authenticationEntryPoint"><ref local="x509ProcessingFilterEntryPoint"/></property> <property name="authenticationEntryPoint"><ref local="x509ProcessingFilterEntryPoint"/></property>
</bean> </bean>
<bean id="x509ProcessingFilter" class="org.acegisecurity.ui.x509.X509ProcessingFilter"> <bean id="x509ProcessingFilter" class="org.springframework.security.ui.x509.X509ProcessingFilter">
<property name="authenticationManager"><ref local="authenticationManager"/></property> <property name="authenticationManager"><ref local="authenticationManager"/></property>
</bean> </bean>
<bean id="x509ProcessingFilterEntryPoint" class="org.acegisecurity.ui.x509.X509ProcessingFilterEntryPoint"> <bean id="x509ProcessingFilterEntryPoint" class="org.springframework.security.ui.x509.X509ProcessingFilterEntryPoint">
</bean> </bean>
<bean id="httpRequestAccessDecisionManager" class="org.acegisecurity.vote.AffirmativeBased"> <bean id="httpRequestAccessDecisionManager" class="org.springframework.security.vote.AffirmativeBased">
<property name="allowIfAllAbstainDecisions"><value>false</value></property> <property name="allowIfAllAbstainDecisions"><value>false</value></property>
<property name="decisionVoters"> <property name="decisionVoters">
<list> <list>
@ -137,7 +137,7 @@
<!-- Note the order that entries are placed against the objectDefinitionSource is critical. <!-- 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. 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 --> 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"> <bean id="filterInvocationInterceptor" class="org.springframework.security.intercept.web.FilterSecurityInterceptor">
<property name="authenticationManager"><ref local="authenticationManager"/></property> <property name="authenticationManager"><ref local="authenticationManager"/></property>
<property name="accessDecisionManager"><ref local="httpRequestAccessDecisionManager"/></property> <property name="accessDecisionManager"><ref local="httpRequestAccessDecisionManager"/></property>
<property name="objectDefinitionSource"> <property name="objectDefinitionSource">

View File

@ -16,7 +16,7 @@
<!-- if you wish to use channel security, add "channelProcessingFilter," in front <!-- if you wish to use channel security, add "channelProcessingFilter," in front
of "httpSessionContextIntegrationFilter" in the list below --> of "httpSessionContextIntegrationFilter" in the list below -->
<bean id="filterChainProxy" class="org.acegisecurity.util.FilterChainProxy"> <bean id="filterChainProxy" class="org.springframework.security.util.FilterChainProxy">
<property name="filterInvocationDefinitionSource"> <property name="filterInvocationDefinitionSource">
<value><![CDATA[ <value><![CDATA[
CONVERT_URL_TO_LOWERCASE_BEFORE_COMPARISON CONVERT_URL_TO_LOWERCASE_BEFORE_COMPARISON
@ -28,7 +28,7 @@
<!-- ======================== AUTHENTICATION ======================= --> <!-- ======================== AUTHENTICATION ======================= -->
<bean id="authenticationManager" class="org.acegisecurity.providers.ProviderManager"> <bean id="authenticationManager" class="org.springframework.security.providers.ProviderManager">
<property name="providers"> <property name="providers">
<list> <list>
<ref local="daoAuthenticationProvider"/> <ref local="daoAuthenticationProvider"/>
@ -38,13 +38,13 @@
</property> </property>
</bean> </bean>
<bean id="jdbcDaoImpl" class="org.acegisecurity.userdetails.jdbc.JdbcDaoImpl"> <bean id="jdbcDaoImpl" class="org.springframework.security.userdetails.jdbc.JdbcDaoImpl">
<property name="dataSource"><ref bean="dataSource"/></property> <property name="dataSource"><ref bean="dataSource"/></property>
</bean> </bean>
<bean id="passwordEncoder" class="org.acegisecurity.providers.encoding.Md5PasswordEncoder"/> <bean id="passwordEncoder" class="org.springframework.security.providers.encoding.Md5PasswordEncoder"/>
<bean id="daoAuthenticationProvider" class="org.acegisecurity.providers.dao.DaoAuthenticationProvider"> <bean id="daoAuthenticationProvider" class="org.springframework.security.providers.dao.DaoAuthenticationProvider">
<property name="userDetailsService"><ref local="jdbcDaoImpl"/></property> <property name="userDetailsService"><ref local="jdbcDaoImpl"/></property>
<!-- <property name="userCache"><ref local="userCache"/></property> --> <!-- <property name="userCache"><ref local="userCache"/></property> -->
<property name="passwordEncoder"><ref local="passwordEncoder"/></property> <property name="passwordEncoder"><ref local="passwordEncoder"/></property>
@ -61,66 +61,66 @@
</property> </property>
</bean> </bean>
<bean id="userCache" class="org.acegisecurity.providers.dao.cache.EhCacheBasedUserCache"> <bean id="userCache" class="org.springframework.security.providers.dao.cache.EhCacheBasedUserCache">
<property name="cache"><ref local="userCacheBackend"/></property> <property name="cache"><ref local="userCacheBackend"/></property>
</bean> </bean>
--> -->
<!-- Automatically receives AuthenticationEvent messages --> <!-- Automatically receives AuthenticationEvent messages -->
<bean id="loggerListener" class="org.acegisecurity.event.authentication.LoggerListener"/> <bean id="loggerListener" class="org.springframework.security.event.authentication.LoggerListener"/>
<bean id="basicProcessingFilter" class="org.acegisecurity.ui.basicauth.BasicProcessingFilter"> <bean id="basicProcessingFilter" class="org.springframework.security.ui.basicauth.BasicProcessingFilter">
<property name="authenticationManager"><ref local="authenticationManager"/></property> <property name="authenticationManager"><ref local="authenticationManager"/></property>
<property name="authenticationEntryPoint"><ref local="basicProcessingFilterEntryPoint"/></property> <property name="authenticationEntryPoint"><ref local="basicProcessingFilterEntryPoint"/></property>
</bean> </bean>
<bean id="basicProcessingFilterEntryPoint" class="org.acegisecurity.ui.basicauth.BasicProcessingFilterEntryPoint"> <bean id="basicProcessingFilterEntryPoint" class="org.springframework.security.ui.basicauth.BasicProcessingFilterEntryPoint">
<property name="realmName"><value>Contacts Realm</value></property> <property name="realmName"><value>Contacts Realm</value></property>
</bean> </bean>
<bean id="anonymousProcessingFilter" class="org.acegisecurity.providers.anonymous.AnonymousProcessingFilter"> <bean id="anonymousProcessingFilter" class="org.springframework.security.providers.anonymous.AnonymousProcessingFilter">
<property name="key"><value>foobar</value></property> <property name="key"><value>foobar</value></property>
<property name="userAttribute"><value>anonymousUser,ROLE_ANONYMOUS</value></property> <property name="userAttribute"><value>anonymousUser,ROLE_ANONYMOUS</value></property>
</bean> </bean>
<bean id="anonymousAuthenticationProvider" class="org.acegisecurity.providers.anonymous.AnonymousAuthenticationProvider"> <bean id="anonymousAuthenticationProvider" class="org.springframework.security.providers.anonymous.AnonymousAuthenticationProvider">
<property name="key"><value>foobar</value></property> <property name="key"><value>foobar</value></property>
</bean> </bean>
<bean id="httpSessionContextIntegrationFilter" class="org.acegisecurity.context.HttpSessionContextIntegrationFilter"> <bean id="httpSessionContextIntegrationFilter" class="org.springframework.security.context.HttpSessionContextIntegrationFilter">
</bean> </bean>
<bean id="rememberMeProcessingFilter" class="org.acegisecurity.ui.rememberme.RememberMeProcessingFilter"> <bean id="rememberMeProcessingFilter" class="org.springframework.security.ui.rememberme.RememberMeProcessingFilter">
<property name="authenticationManager"><ref local="authenticationManager"/></property> <property name="authenticationManager"><ref local="authenticationManager"/></property>
<property name="rememberMeServices"><ref local="rememberMeServices"/></property> <property name="rememberMeServices"><ref local="rememberMeServices"/></property>
</bean> </bean>
<bean id="rememberMeServices" class="org.acegisecurity.ui.rememberme.TokenBasedRememberMeServices"> <bean id="rememberMeServices" class="org.springframework.security.ui.rememberme.TokenBasedRememberMeServices">
<property name="userDetailsService"><ref local="jdbcDaoImpl"/></property> <property name="userDetailsService"><ref local="jdbcDaoImpl"/></property>
<property name="key"><value>springRocks</value></property> <property name="key"><value>springRocks</value></property>
</bean> </bean>
<bean id="rememberMeAuthenticationProvider" class="org.acegisecurity.providers.rememberme.RememberMeAuthenticationProvider"> <bean id="rememberMeAuthenticationProvider" class="org.springframework.security.providers.rememberme.RememberMeAuthenticationProvider">
<property name="key"><value>springRocks</value></property> <property name="key"><value>springRocks</value></property>
</bean> </bean>
<bean id="logoutFilter" class="org.acegisecurity.ui.logout.LogoutFilter"> <bean id="logoutFilter" class="org.springframework.security.ui.logout.LogoutFilter">
<constructor-arg value="/index.jsp"/> <!-- URL redirected to after logout --> <constructor-arg value="/index.jsp"/> <!-- URL redirected to after logout -->
<constructor-arg> <constructor-arg>
<list> <list>
<ref bean="rememberMeServices"/> <ref bean="rememberMeServices"/>
<bean class="org.acegisecurity.ui.logout.SecurityContextLogoutHandler"/> <bean class="org.springframework.security.ui.logout.SecurityContextLogoutHandler"/>
</list> </list>
</constructor-arg> </constructor-arg>
</bean> </bean>
<bean id="securityContextHolderAwareRequestFilter" class="org.acegisecurity.wrapper.SecurityContextHolderAwareRequestFilter"/> <bean id="securityContextHolderAwareRequestFilter" class="org.springframework.security.wrapper.SecurityContextHolderAwareRequestFilter"/>
<!-- ===================== HTTP CHANNEL REQUIREMENTS ==================== --> <!-- ===================== HTTP CHANNEL REQUIREMENTS ==================== -->
<!-- You will need to uncomment the "Acegi Channel Processing Filter" <!-- You will need to uncomment the "Acegi Channel Processing Filter"
<filter-mapping> in web.xml for the following beans to be used --> <filter-mapping> in web.xml for the following beans to be used -->
<bean id="channelProcessingFilter" class="org.acegisecurity.securechannel.ChannelProcessingFilter"> <bean id="channelProcessingFilter" class="org.springframework.security.securechannel.ChannelProcessingFilter">
<property name="channelDecisionManager"><ref local="channelDecisionManager"/></property> <property name="channelDecisionManager"><ref local="channelDecisionManager"/></property>
<property name="filterInvocationDefinitionSource"> <property name="filterInvocationDefinitionSource">
<value><![CDATA[ <value><![CDATA[
@ -133,7 +133,7 @@
</property> </property>
</bean> </bean>
<bean id="channelDecisionManager" class="org.acegisecurity.securechannel.ChannelDecisionManagerImpl"> <bean id="channelDecisionManager" class="org.springframework.security.securechannel.ChannelDecisionManagerImpl">
<property name="channelProcessors"> <property name="channelProcessors">
<list> <list>
<ref local="secureChannelProcessor"/> <ref local="secureChannelProcessor"/>
@ -142,21 +142,21 @@
</property> </property>
</bean> </bean>
<bean id="secureChannelProcessor" class="org.acegisecurity.securechannel.SecureChannelProcessor"/> <bean id="secureChannelProcessor" class="org.springframework.security.securechannel.SecureChannelProcessor"/>
<bean id="insecureChannelProcessor" class="org.acegisecurity.securechannel.InsecureChannelProcessor"/> <bean id="insecureChannelProcessor" class="org.springframework.security.securechannel.InsecureChannelProcessor"/>
<!-- ===================== HTTP REQUEST SECURITY ==================== --> <!-- ===================== HTTP REQUEST SECURITY ==================== -->
<bean id="exceptionTranslationFilter" class="org.acegisecurity.ui.ExceptionTranslationFilter"> <bean id="exceptionTranslationFilter" class="org.springframework.security.ui.ExceptionTranslationFilter">
<property name="authenticationEntryPoint"><ref local="authenticationProcessingFilterEntryPoint"/></property> <property name="authenticationEntryPoint"><ref local="authenticationProcessingFilterEntryPoint"/></property>
<property name="accessDeniedHandler"> <property name="accessDeniedHandler">
<bean class="org.acegisecurity.ui.AccessDeniedHandlerImpl"> <bean class="org.springframework.security.ui.AccessDeniedHandlerImpl">
<property name="errorPage" value="/accessDenied.jsp"/> <property name="errorPage" value="/accessDenied.jsp"/>
</bean> </bean>
</property> </property>
</bean> </bean>
<bean id="authenticationProcessingFilter" class="org.acegisecurity.ui.webapp.AuthenticationProcessingFilter"> <bean id="authenticationProcessingFilter" class="org.springframework.security.ui.webapp.AuthenticationProcessingFilter">
<property name="authenticationManager"><ref bean="authenticationManager"/></property> <property name="authenticationManager"><ref bean="authenticationManager"/></property>
<property name="authenticationFailureUrl"><value>/acegilogin.jsp?login_error=1</value></property> <property name="authenticationFailureUrl"><value>/acegilogin.jsp?login_error=1</value></property>
<property name="defaultTargetUrl"><value>/</value></property> <property name="defaultTargetUrl"><value>/</value></property>
@ -164,12 +164,12 @@
<property name="rememberMeServices"><ref local="rememberMeServices"/></property> <property name="rememberMeServices"><ref local="rememberMeServices"/></property>
</bean> </bean>
<bean id="authenticationProcessingFilterEntryPoint" class="org.acegisecurity.ui.webapp.AuthenticationProcessingFilterEntryPoint"> <bean id="authenticationProcessingFilterEntryPoint" class="org.springframework.security.ui.webapp.AuthenticationProcessingFilterEntryPoint">
<property name="loginFormUrl"><value>/acegilogin.jsp</value></property> <property name="loginFormUrl"><value>/acegilogin.jsp</value></property>
<property name="forceHttps"><value>false</value></property> <property name="forceHttps"><value>false</value></property>
</bean> </bean>
<bean id="httpRequestAccessDecisionManager" class="org.acegisecurity.vote.AffirmativeBased"> <bean id="httpRequestAccessDecisionManager" class="org.springframework.security.vote.AffirmativeBased">
<property name="allowIfAllAbstainDecisions"><value>false</value></property> <property name="allowIfAllAbstainDecisions"><value>false</value></property>
<property name="decisionVoters"> <property name="decisionVoters">
<list> <list>
@ -181,7 +181,7 @@
<!-- Note the order that entries are placed against the objectDefinitionSource is critical. <!-- 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. 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 --> 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"> <bean id="filterInvocationInterceptor" class="org.springframework.security.intercept.web.FilterSecurityInterceptor">
<property name="authenticationManager"><ref bean="authenticationManager"/></property> <property name="authenticationManager"><ref bean="authenticationManager"/></property>
<property name="accessDecisionManager"><ref local="httpRequestAccessDecisionManager"/></property> <property name="accessDecisionManager"><ref local="httpRequestAccessDecisionManager"/></property>
<property name="objectDefinitionSource"> <property name="objectDefinitionSource">
@ -202,11 +202,11 @@
<!-- Filter used to switch the user context. Note: the switch and exit url must be secured <!-- Filter used to switch the user context. Note: the switch and exit url must be secured
based on the role granted the ability to 'switch' to another user --> based on the role granted the ability to 'switch' to another user -->
<!-- In this example 'marissa' has ROLE_SUPERVISOR that can switch to regular ROLE_USER(s) --> <!-- In this example 'marissa' has ROLE_SUPERVISOR that can switch to regular ROLE_USER(s) -->
<bean id="switchUserProcessingFilter" class="org.acegisecurity.ui.switchuser.SwitchUserProcessingFilter"> <bean id="switchUserProcessingFilter" class="org.springframework.security.ui.switchuser.SwitchUserProcessingFilter">
<property name="userDetailsService" ref="jdbcDaoImpl" /> <property name="userDetailsService" ref="jdbcDaoImpl" />
<property name="switchUserUrl"><value>/j_acegi_switch_user</value></property> <property name="switchUserUrl"><value>/j_acegi_switch_user</value></property>
<property name="exitUserUrl"><value>/j_acegi_exit_user</value></property> <property name="exitUserUrl"><value>/j_acegi_exit_user</value></property>
<property name="targetUrl"><value>/acegi-security-sample-contacts-filter/secure/index.htm</value></property> <property name="targetUrl"><value>/spring-security-sample-contacts-filter/secure/index.htm</value></property>
</bean> </bean>
</beans> </beans>

View File

@ -5,21 +5,21 @@ log4j.rootLogger=WARN, stdout, fileout
#log4j.logger.org.springframework.aop.framework.autoproxy.metadata=DEBUG, stdout, fileout #log4j.logger.org.springframework.aop.framework.autoproxy.metadata=DEBUG, stdout, fileout
#log4j.logger.org.springframework.aop.framework.autoproxy.target=DEBUG, stdout, fileout #log4j.logger.org.springframework.aop.framework.autoproxy.target=DEBUG, stdout, fileout
#log4j.logger.org.springframework.transaction.interceptor=DEBUG, stdout, fileout #log4j.logger.org.springframework.transaction.interceptor=DEBUG, stdout, fileout
#log4j.logger.org.acegisecurity.intercept=DEBUG, stdout, fileout #log4j.logger.org.springframework.security.intercept=DEBUG, stdout, fileout
#log4j.logger.org.acegisecurity.intercept.method=DEBUG, stdout, fileout #log4j.logger.org.springframework.security.intercept.method=DEBUG, stdout, fileout
#log4j.logger.org.acegisecurity.intercept.web=DEBUG, stdout, fileout #log4j.logger.org.springframework.security.intercept.web=DEBUG, stdout, fileout
#log4j.logger.org.acegisecurity.afterinvocation=DEBUG, stdout, fileout #log4j.logger.org.springframework.security.afterinvocation=DEBUG, stdout, fileout
#log4j.logger.org.acegisecurity.acl=DEBUG, stdout, fileout #log4j.logger.org.springframework.security.acl=DEBUG, stdout, fileout
#log4j.logger.org.acegisecurity.acl.basic=DEBUG, stdout, fileout #log4j.logger.org.springframework.security.acl.basic=DEBUG, stdout, fileout
#log4j.logger.org.acegisecurity.taglibs.authz=DEBUG, stdout, fileout #log4j.logger.org.springframework.security.taglibs.authz=DEBUG, stdout, fileout
#log4j.logger.org.acegisecurity.ui.basicauth=DEBUG, stdout, fileout #log4j.logger.org.springframework.security.ui.basicauth=DEBUG, stdout, fileout
#log4j.logger.org.acegisecurity.ui.rememberme=DEBUG, stdout, fileout #log4j.logger.org.springframework.security.ui.rememberme=DEBUG, stdout, fileout
#log4j.logger.org.acegisecurity.ui=DEBUG, stdout, fileout #log4j.logger.org.springframework.security.ui=DEBUG, stdout, fileout
#log4j.logger.org.acegisecurity.afterinvocation=DEBUG, stdout, fileout #log4j.logger.org.springframework.security.afterinvocation=DEBUG, stdout, fileout
#log4j.logger.org.acegisecurity.ui.rmi=DEBUG, stdout, fileout #log4j.logger.org.springframework.security.ui.rmi=DEBUG, stdout, fileout
#log4j.logger.org.acegisecurity.ui.httpinvoker=DEBUG, stdout, fileout #log4j.logger.org.springframework.security.ui.httpinvoker=DEBUG, stdout, fileout
#log4j.logger.org.acegisecurity.util=DEBUG, stdout, fileout #log4j.logger.org.springframework.security.util=DEBUG, stdout, fileout
#log4j.logger.org.acegisecurity.providers.dao=DEBUG, stdout, fileout #log4j.logger.org.springframework.security.providers.dao=DEBUG, stdout, fileout
log4j.logger.sample.contact=DEBUG, stdout, fileout log4j.logger.sample.contact=DEBUG, stdout, fileout
# Console output... # Console output...

View File

@ -47,10 +47,10 @@
<filter> <filter>
<filter-name>Acegi Filter Chain Proxy</filter-name> <filter-name>Acegi Filter Chain Proxy</filter-name>
<filter-class>org.acegisecurity.util.FilterToBeanProxy</filter-class> <filter-class>org.springframework.acegisecurityrk.acegisecurity.util.FilterToBeanProxy</filter-class>
<init-param> <init-param>
<param-name>targetClass</param-name> <param-name>targetClass</param-name>
<param-value>org.acegisecurity.util.FilterChainProxy</param-value> <param-value>org.springframework.security.util.FilterChainProxy</param-value>
</init-param> </init-param>
</filter> </filter>
@ -78,7 +78,7 @@
to the WebApplicationContext to the WebApplicationContext
--> -->
<listener> <listener>
<listener-class>org.acegisecurity.ui.session.HttpSessionEventPublisher</listener-class> <listener-class>org.springframework.security.ui.session.HttpSessionEventPublisher</listener-class>
</listener> </listener>
<!-- <!--

View File

@ -1,6 +1,6 @@
<%@ page import="org.acegisecurity.context.SecurityContextHolder" %> <%@ page import="org.springframework.security.context.SecurityContextHolder" %>
<%@ page import="org.acegisecurity.Authentication" %> <%@ page import="org.springframework.security.Authentication" %>
<%@ page import="org.acegisecurity.ui.AccessDeniedHandlerImpl" %> <%@ page import="org.springframework.security.ui.AccessDeniedHandlerImpl" %>
<h1>Sorry, access is denied</h1> <h1>Sorry, access is denied</h1>

View File

@ -1,7 +1,7 @@
<%@ taglib prefix='c' uri='http://java.sun.com/jstl/core' %> <%@ taglib prefix='c' uri='http://java.sun.com/jstl/core' %>
<%@ page import="org.acegisecurity.ui.AbstractProcessingFilter" %> <%@ page import="org.springframework.security.ui.AbstractProcessingFilter" %>
<%@ page import="org.acegisecurity.ui.webapp.AuthenticationProcessingFilter" %> <%@ page import="org.springframework.security.ui.webapp.AuthenticationProcessingFilter" %>
<%@ page import="org.acegisecurity.AuthenticationException" %> <%@ page import="org.springframework.security.AuthenticationException" %>
<html> <html>
<head> <head>

View File

@ -1,6 +1,6 @@
<%@ taglib prefix='c' uri='http://java.sun.com/jstl/core' %> <%@ taglib prefix='c' uri='http://java.sun.com/jstl/core' %>
<%@ page import="org.acegisecurity.ui.AbstractProcessingFilter" %> <%@ page import="org.springframework.security.ui.AbstractProcessingFilter" %>
<%@ page import="org.acegisecurity.AuthenticationException" %> <%@ page import="org.springframework.security.AuthenticationException" %>
<html> <html>
<head> <head>
@ -12,7 +12,7 @@
<font color="red"> <font color="red">
Your CAS credentials were rejected.<BR><BR> Your CAS credentials were rejected.<BR><BR>
Reason: <%= ((AuthenticationException) session.getAttribute(org.acegisecurity.ui.AbstractProcessingFilter.ACEGI_SECURITY_LAST_EXCEPTION_KEY)).getMessage() %> Reason: <%= ((AuthenticationException) session.getAttribute(org.springframework.security.ui.AbstractProcessingFilter.ACEGI_SECURITY_LAST_EXCEPTION_KEY)).getMessage() %>
</font> </font>
</body> </body>

View File

@ -1,10 +1,10 @@
<%@ taglib prefix='c' uri='http://java.sun.com/jstl/core' %> <%@ taglib prefix='c' uri='http://java.sun.com/jstl/core' %>
<%@ page import="org.acegisecurity.context.SecurityContextHolder" %> <%@ page import="org.springframework.security.context.SecurityContextHolder" %>
<%@ page import="org.acegisecurity.Authentication" %> <%@ page import="org.springframework.security.Authentication" %>
<%@ page import="org.acegisecurity.ui.AbstractProcessingFilter" %> <%@ page import="org.springframework.security.ui.AbstractProcessingFilter" %>
<%@ page import="org.acegisecurity.ui.webapp.AuthenticationProcessingFilter" %> <%@ page import="org.springframework.security.ui.webapp.AuthenticationProcessingFilter" %>
<%@ page import="org.acegisecurity.AuthenticationException" %> <%@ page import="org.springframework.security.AuthenticationException" %>
<html> <html>
<head> <head>

View File

@ -1,7 +1,7 @@
<%@ page import="org.acegisecurity.context.SecurityContextHolder" %> <%@ page import="org.springframework.security.context.SecurityContextHolder" %>
<%@ page import="org.acegisecurity.Authentication" %> <%@ page import="org.springframework.security.Authentication" %>
<%@ page import="org.acegisecurity.GrantedAuthority" %> <%@ page import="org.springframework.security.GrantedAuthority" %>
<%@ page import="org.acegisecurity.adapters.AuthByAdapter" %> <%@ page import="org.springframework.security.adapters.AuthByAdapter" %>
<% <%
Authentication auth = SecurityContextHolder.getContext().getAuthentication(); Authentication auth = SecurityContextHolder.getContext().getAuthentication();

View File

@ -1,6 +1,6 @@
<%@ taglib prefix='c' uri='http://java.sun.com/jstl/core' %> <%@ taglib prefix='c' uri='http://java.sun.com/jstl/core' %>
<%@ page import="org.acegisecurity.ui.AbstractProcessingFilter" %> <%@ page import="org.springframework.security.ui.AbstractProcessingFilter" %>
<%@ page import="org.acegisecurity.AuthenticationException" %> <%@ page import="org.springframework.security.AuthenticationException" %>
<html> <html>
<head> <head>

View File

@ -14,14 +14,14 @@
*/ */
package sample.contact; package sample.contact;
import org.acegisecurity.Authentication; import org.springframework.security.Authentication;
import org.acegisecurity.acls.domain.BasePermission; import org.springframework.security.acls.domain.BasePermission;
import org.acegisecurity.acls.sid.PrincipalSid; import org.springframework.security.acls.sid.PrincipalSid;
import org.acegisecurity.context.SecurityContextHolder; import org.springframework.security.context.SecurityContextHolder;
import org.acegisecurity.providers.UsernamePasswordAuthenticationToken; import org.springframework.security.providers.UsernamePasswordAuthenticationToken;
import org.springframework.beans.factory.config.AutowireCapableBeanFactory; import org.springframework.beans.factory.config.AutowireCapableBeanFactory;

View File

@ -13,26 +13,26 @@
<!-- ======================== AUTHENTICATION ======================= --> <!-- ======================== AUTHENTICATION ======================= -->
<bean id="authenticationManager" class="org.acegisecurity.providers.ProviderManager"> <bean id="authenticationManager" class="org.springframework.security.providers.ProviderManager">
<property name="providers"> <property name="providers">
<list> <list>
<ref local="daoAuthenticationProvider"/> <ref local="daoAuthenticationProvider"/>
</list> </list>
</property> </property>
</bean> </bean>
<bean id="daoAuthenticationProvider" class="org.acegisecurity.providers.dao.DaoAuthenticationProvider"> <bean id="daoAuthenticationProvider" class="org.springframework.security.providers.dao.DaoAuthenticationProvider">
<property name="userDetailsService"><ref local="jdbcDaoImpl"/></property> <property name="userDetailsService"><ref local="jdbcDaoImpl"/></property>
<property name="passwordEncoder"><ref local="passwordEncoder"/></property> <property name="passwordEncoder"><ref local="passwordEncoder"/></property>
</bean> </bean>
<bean id="jdbcDaoImpl" class="org.acegisecurity.userdetails.jdbc.JdbcDaoImpl"> <bean id="jdbcDaoImpl" class="org.springframework.security.userdetails.jdbc.JdbcDaoImpl">
<property name="dataSource"><ref bean="dataSource"/></property> <property name="dataSource"><ref bean="dataSource"/></property>
</bean> </bean>
<bean id="passwordEncoder" class="org.acegisecurity.providers.encoding.Md5PasswordEncoder"/> <bean id="passwordEncoder" class="org.springframework.security.providers.encoding.Md5PasswordEncoder"/>
<!-- Automatically receives AuthenticationEvent messages --> <!-- Automatically receives AuthenticationEvent messages -->
<bean id="loggerListener" class="org.acegisecurity.event.authentication.LoggerListener"/> <bean id="loggerListener" class="org.springframework.security.event.authentication.LoggerListener"/>
</beans> </beans>

View File

@ -4,16 +4,16 @@
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion> <modelVersion>4.0.0</modelVersion>
<parent> <parent>
<groupId>org.acegisecurity</groupId> <groupId>org.springframework.security</groupId>
<artifactId>acegi-security-samples</artifactId> <artifactId>spring-security-samples</artifactId>
<version>2.0-SNAPSHOT</version> <version>2.0-SNAPSHOT</version>
</parent> </parent>
<artifactId>acegi-security-sample-dms</artifactId> <artifactId>spring-security-sample-dms</artifactId>
<name>Acegi Security System for Spring - dms sample</name> <name>Acegi Security System for Spring - dms sample</name>
<dependencies> <dependencies>
<dependency> <dependency>
<groupId>org.acegisecurity</groupId> <groupId>org.springframework.security</groupId>
<artifactId>acegi-security</artifactId> <artifactId>spring-security-core</artifactId>
<version>${project.version}</version> <version>${project.version}</version>
</dependency> </dependency>
<dependency> <dependency>

View File

@ -14,11 +14,11 @@
<value> <value>
sample.dms.secured.SecureDocumentDao.*=PROPAGATION_REQUIRED sample.dms.secured.SecureDocumentDao.*=PROPAGATION_REQUIRED
sample.dms.DocumentDao.*=PROPAGATION_REQUIRED sample.dms.DocumentDao.*=PROPAGATION_REQUIRED
org.acegisecurity.acls.AclService.*=PROPAGATION_REQUIRED org.springframework.security.acls.AclService.*=PROPAGATION_REQUIRED
org.acegisecurity.acls.MutableAclService.*=PROPAGATION_REQUIRED org.springframework.security.acls.MutableAclService.*=PROPAGATION_REQUIRED
org.acegisecurity.acls.jdbc.JdbcMutableAclService.*=PROPAGATION_REQUIRED org.springframework.security.acls.jdbc.JdbcMutableAclService.*=PROPAGATION_REQUIRED
org.acegisecurity.acls.jdbc.JdbcAclService.*=PROPAGATION_REQUIRED org.springframework.security.acls.jdbc.JdbcAclService.*=PROPAGATION_REQUIRED
</value> </value>
</property> </property>
<property name="transactionManager" ref="transactionManager" /> <property name="transactionManager" ref="transactionManager" />
</bean> </bean>
@ -27,7 +27,7 @@
<constructor-arg ref="aclService"/> <constructor-arg ref="aclService"/>
<property name="dataSource" ref="dataSource"/> <property name="dataSource" ref="dataSource"/>
</bean> </bean>
<bean id="dataSourcePopulator" class="sample.dms.secured.SecureDataSourcePopulator"> <bean id="dataSourcePopulator" class="sample.dms.secured.SecureDataSourcePopulator">
<constructor-arg ref="dataSource"/> <constructor-arg ref="dataSource"/>
<constructor-arg ref="documentDao"/> <constructor-arg ref="documentDao"/>
@ -39,7 +39,7 @@
<!-- ======================== AUTHENTICATION (note there is no UI and this is for integration tests only) ======================= --> <!-- ======================== AUTHENTICATION (note there is no UI and this is for integration tests only) ======================= -->
<bean id="authenticationManager" class="org.acegisecurity.providers.ProviderManager"> <bean id="authenticationManager" class="org.springframework.security.providers.ProviderManager">
<property name="providers"> <property name="providers">
<list> <list>
<ref local="daoAuthenticationProvider"/> <ref local="daoAuthenticationProvider"/>
@ -49,72 +49,72 @@
</property> </property>
</bean> </bean>
<bean id="jdbcDaoImpl" class="org.acegisecurity.userdetails.jdbc.JdbcDaoImpl"> <bean id="jdbcDaoImpl" class="org.springframework.security.userdetails.jdbc.JdbcDaoImpl">
<property name="dataSource" ref="dataSource"/> <property name="dataSource" ref="dataSource"/>
</bean> </bean>
<bean id="daoAuthenticationProvider" class="org.acegisecurity.providers.dao.DaoAuthenticationProvider"> <bean id="daoAuthenticationProvider" class="org.springframework.security.providers.dao.DaoAuthenticationProvider">
<property name="userDetailsService" ref="jdbcDaoImpl"/> <property name="userDetailsService" ref="jdbcDaoImpl"/>
<property name="userCache" ref="userCache"/> <property name="userCache" ref="userCache"/>
<property name="passwordEncoder"> <property name="passwordEncoder">
<bean class="org.acegisecurity.providers.encoding.Md5PasswordEncoder"/> <bean class="org.springframework.security.providers.encoding.Md5PasswordEncoder"/>
</property> </property>
</bean> </bean>
<bean id="cacheManager" class="org.springframework.cache.ehcache.EhCacheManagerFactoryBean"/> <bean id="cacheManager" class="org.springframework.cache.ehcache.EhCacheManagerFactoryBean"/>
<bean id="userCacheBackend" class="org.springframework.cache.ehcache.EhCacheFactoryBean"> <bean id="userCacheBackend" class="org.springframework.cache.ehcache.EhCacheFactoryBean">
<property name="cacheManager" ref="cacheManager"/> <property name="cacheManager" ref="cacheManager"/>
<property name="cacheName" value="userCache"/> <property name="cacheName" value="userCache"/>
</bean> </bean>
<bean id="userCache" class="org.acegisecurity.providers.dao.cache.EhCacheBasedUserCache"> <bean id="userCache" class="org.springframework.security.providers.dao.cache.EhCacheBasedUserCache">
<property name="cache" ref="userCacheBackend"/> <property name="cache" ref="userCacheBackend"/>
</bean> </bean>
<!-- Automatically receives AuthenticationEvent messages --> <!-- Automatically receives AuthenticationEvent messages -->
<bean id="loggerListener" class="org.acegisecurity.event.authentication.LoggerListener"/> <bean id="loggerListener" class="org.springframework.security.event.authentication.LoggerListener"/>
<bean id="anonymousAuthenticationProvider" class="org.acegisecurity.providers.anonymous.AnonymousAuthenticationProvider"> <bean id="anonymousAuthenticationProvider" class="org.springframework.security.providers.anonymous.AnonymousAuthenticationProvider">
<property name="key" value="foobar"/> <property name="key" value="foobar"/>
</bean> </bean>
<bean id="httpSessionContextIntegrationFilter" class="org.acegisecurity.context.HttpSessionContextIntegrationFilter"/> <bean id="httpSessionContextIntegrationFilter" class="org.springframework.security.context.HttpSessionContextIntegrationFilter"/>
<bean id="rememberMeServices" class="org.acegisecurity.ui.rememberme.TokenBasedRememberMeServices"> <bean id="rememberMeServices" class="org.springframework.security.ui.rememberme.TokenBasedRememberMeServices">
<property name="userDetailsService" ref="jdbcDaoImpl"/> <property name="userDetailsService" ref="jdbcDaoImpl"/>
<property name="key" value="springRocks"/> <property name="key" value="springRocks"/>
</bean> </bean>
<bean id="rememberMeAuthenticationProvider" class="org.acegisecurity.providers.rememberme.RememberMeAuthenticationProvider"> <bean id="rememberMeAuthenticationProvider" class="org.springframework.security.providers.rememberme.RememberMeAuthenticationProvider">
<property name="key" value="springRocks"/> <property name="key" value="springRocks"/>
</bean> </bean>
<!-- ========================= "BEFORE INVOCATION" AUTHORIZATION DEFINITIONS ============================== --> <!-- ========================= "BEFORE INVOCATION" AUTHORIZATION DEFINITIONS ============================== -->
<!-- ACL permission masks used by this application --> <!-- ACL permission masks used by this application -->
<bean id="org.acegisecurity.acls.domain.BasePermission.ADMINISTRATION" class="org.springframework.beans.factory.config.FieldRetrievingFactoryBean"> <bean id="org.springframework.security.acls.domain.BasePermission.ADMINISTRATION" class="org.springframework.beans.factory.config.FieldRetrievingFactoryBean">
<property name="staticField"><value>org.acegisecurity.acls.domain.BasePermission.ADMINISTRATION</value></property> <property name="staticField"><value>org.springframework.security.acls.domain.BasePermission.ADMINISTRATION</value></property>
</bean> </bean>
<bean id="org.acegisecurity.acls.domain.BasePermission.READ" class="org.springframework.beans.factory.config.FieldRetrievingFactoryBean"> <bean id="org.springframework.security.acls.domain.BasePermission.READ" class="org.springframework.beans.factory.config.FieldRetrievingFactoryBean">
<property name="staticField"><value>org.acegisecurity.acls.domain.BasePermission.READ</value></property> <property name="staticField"><value>org.springframework.security.acls.domain.BasePermission.READ</value></property>
</bean> </bean>
<bean id="org.acegisecurity.acls.domain.BasePermission.WRITE" class="org.springframework.beans.factory.config.FieldRetrievingFactoryBean"> <bean id="org.springframework.security.acls.domain.BasePermission.WRITE" class="org.springframework.beans.factory.config.FieldRetrievingFactoryBean">
<property name="staticField"><value>org.acegisecurity.acls.domain.BasePermission.WRITE</value></property> <property name="staticField"><value>org.springframework.security.acls.domain.BasePermission.WRITE</value></property>
</bean> </bean>
<!-- An access decision voter that reads ROLE_* configuration settings --> <!-- An access decision voter that reads ROLE_* configuration settings -->
<bean id="roleVoter" class="org.acegisecurity.vote.RoleVoter"/> <bean id="roleVoter" class="org.springframework.security.vote.RoleVoter"/>
<!-- An access decision voter that reads ACL_ABSTRACT_ELEMENT_WRITE_PARENT configuration settings --> <!-- An access decision voter that reads ACL_ABSTRACT_ELEMENT_WRITE_PARENT configuration settings -->
<bean id="aclAbstractElementWriteParentVoter" class="org.acegisecurity.vote.AclEntryVoter"> <bean id="aclAbstractElementWriteParentVoter" class="org.springframework.security.vote.AclEntryVoter">
<constructor-arg ref="aclService"/> <constructor-arg ref="aclService"/>
<constructor-arg value="ACL_ABSTRACT_ELEMENT_WRITE_PARENT"/> <constructor-arg value="ACL_ABSTRACT_ELEMENT_WRITE_PARENT"/>
<constructor-arg> <constructor-arg>
<list> <list>
<ref local="org.acegisecurity.acls.domain.BasePermission.ADMINISTRATION"/> <ref local="org.springframework.security.acls.domain.BasePermission.ADMINISTRATION"/>
<ref local="org.acegisecurity.acls.domain.BasePermission.WRITE"/> <ref local="org.springframework.security.acls.domain.BasePermission.WRITE"/>
</list> </list>
</constructor-arg> </constructor-arg>
<property name="processDomainObjectClass"><value>sample.dms.AbstractElement</value></property> <property name="processDomainObjectClass"><value>sample.dms.AbstractElement</value></property>
@ -122,20 +122,20 @@
</bean> </bean>
<!-- An access decision voter that reads ACL_ABSTRACT_ELEMENT_WRITE configuration settings --> <!-- An access decision voter that reads ACL_ABSTRACT_ELEMENT_WRITE configuration settings -->
<bean id="aclAbstractElementWriteVoter" class="org.acegisecurity.vote.AclEntryVoter"> <bean id="aclAbstractElementWriteVoter" class="org.springframework.security.vote.AclEntryVoter">
<constructor-arg ref="aclService"/> <constructor-arg ref="aclService"/>
<constructor-arg value="ACL_ABSTRACT_ELEMENT_WRITE"/> <constructor-arg value="ACL_ABSTRACT_ELEMENT_WRITE"/>
<constructor-arg> <constructor-arg>
<list> <list>
<ref local="org.acegisecurity.acls.domain.BasePermission.ADMINISTRATION"/> <ref local="org.springframework.security.acls.domain.BasePermission.ADMINISTRATION"/>
<ref local="org.acegisecurity.acls.domain.BasePermission.WRITE"/> <ref local="org.springframework.security.acls.domain.BasePermission.WRITE"/>
</list> </list>
</constructor-arg> </constructor-arg>
<property name="processDomainObjectClass"><value>sample.dms.AbstractElement</value></property> <property name="processDomainObjectClass"><value>sample.dms.AbstractElement</value></property>
</bean> </bean>
<!-- An access decision manager used by the business objects --> <!-- An access decision manager used by the business objects -->
<bean id="businessAccessDecisionManager" class="org.acegisecurity.vote.AffirmativeBased"> <bean id="businessAccessDecisionManager" class="org.springframework.security.vote.AffirmativeBased">
<property name="allowIfAllAbstainDecisions" value="true"/> <property name="allowIfAllAbstainDecisions" value="true"/>
<property name="decisionVoters"> <property name="decisionVoters">
<list> <list>
@ -148,7 +148,7 @@
<!-- ========= ACCESS CONTROL LIST LOOKUP MANAGER DEFINITIONS ========= --> <!-- ========= ACCESS CONTROL LIST LOOKUP MANAGER DEFINITIONS ========= -->
<bean id="aclCache" class="org.acegisecurity.acls.jdbc.EhCacheBasedAclCache"> <bean id="aclCache" class="org.springframework.security.acls.jdbc.EhCacheBasedAclCache">
<constructor-arg> <constructor-arg>
<bean class="org.springframework.cache.ehcache.EhCacheFactoryBean"> <bean class="org.springframework.cache.ehcache.EhCacheFactoryBean">
<property name="cacheManager"> <property name="cacheManager">
@ -158,33 +158,33 @@
</bean> </bean>
</constructor-arg> </constructor-arg>
</bean> </bean>
<bean id="lookupStrategy" class="org.acegisecurity.acls.jdbc.BasicLookupStrategy"> <bean id="lookupStrategy" class="org.springframework.security.acls.jdbc.BasicLookupStrategy">
<constructor-arg ref="dataSource"/> <constructor-arg ref="dataSource"/>
<constructor-arg ref="aclCache"/> <constructor-arg ref="aclCache"/>
<constructor-arg ref="aclAuthorizationStrategy"/> <constructor-arg ref="aclAuthorizationStrategy"/>
<constructor-arg> <constructor-arg>
<bean class="org.acegisecurity.acls.domain.ConsoleAuditLogger"/> <bean class="org.springframework.security.acls.domain.ConsoleAuditLogger"/>
</constructor-arg> </constructor-arg>
</bean> </bean>
<bean id="aclAuthorizationStrategy" class="org.acegisecurity.acls.domain.AclAuthorizationStrategyImpl"> <bean id="aclAuthorizationStrategy" class="org.springframework.security.acls.domain.AclAuthorizationStrategyImpl">
<constructor-arg> <constructor-arg>
<list> <list>
<bean class="org.acegisecurity.GrantedAuthorityImpl"> <bean class="org.springframework.security.GrantedAuthorityImpl">
<constructor-arg value="ROLE_ADMINISTRATOR"/> <constructor-arg value="ROLE_ADMINISTRATOR"/>
</bean> </bean>
<bean class="org.acegisecurity.GrantedAuthorityImpl"> <bean class="org.springframework.security.GrantedAuthorityImpl">
<constructor-arg value="ROLE_ADMINISTRATOR"/> <constructor-arg value="ROLE_ADMINISTRATOR"/>
</bean> </bean>
<bean class="org.acegisecurity.GrantedAuthorityImpl"> <bean class="org.springframework.security.GrantedAuthorityImpl">
<constructor-arg value="ROLE_ADMINISTRATOR"/> <constructor-arg value="ROLE_ADMINISTRATOR"/>
</bean> </bean>
</list> </list>
</constructor-arg> </constructor-arg>
</bean> </bean>
<bean id="aclService" class="org.acegisecurity.acls.jdbc.JdbcMutableAclService"> <bean id="aclService" class="org.springframework.security.acls.jdbc.JdbcMutableAclService">
<constructor-arg ref="dataSource"/> <constructor-arg ref="dataSource"/>
<constructor-arg ref="lookupStrategy"/> <constructor-arg ref="lookupStrategy"/>
<constructor-arg ref="aclCache"/> <constructor-arg ref="aclCache"/>
@ -192,30 +192,30 @@
<!-- ============== "AFTER INTERCEPTION" AUTHORIZATION DEFINITIONS =========== --> <!-- ============== "AFTER INTERCEPTION" AUTHORIZATION DEFINITIONS =========== -->
<bean id="afterInvocationManager" class="org.acegisecurity.afterinvocation.AfterInvocationProviderManager"> <bean id="afterInvocationManager" class="org.springframework.security.afterinvocation.AfterInvocationProviderManager">
<property name="providers"> <property name="providers">
<list> <list>
<ref local="afterAclCollectionRead"/> <ref local="afterAclCollectionRead"/>
</list> </list>
</property> </property>
</bean> </bean>
<!-- Processes AFTER_ACL_COLLECTION_READ configuration settings --> <!-- Processes AFTER_ACL_COLLECTION_READ configuration settings -->
<bean id="afterAclCollectionRead" class="org.acegisecurity.afterinvocation.AclEntryAfterInvocationCollectionFilteringProvider"> <bean id="afterAclCollectionRead" class="org.springframework.security.afterinvocation.AclEntryAfterInvocationCollectionFilteringProvider">
<constructor-arg ref="aclService"/> <constructor-arg ref="aclService"/>
<constructor-arg> <constructor-arg>
<list> <list>
<ref local="org.acegisecurity.acls.domain.BasePermission.ADMINISTRATION"/> <ref local="org.springframework.security.acls.domain.BasePermission.ADMINISTRATION"/>
<ref local="org.acegisecurity.acls.domain.BasePermission.READ"/> <ref local="org.springframework.security.acls.domain.BasePermission.READ"/>
</list> </list>
</constructor-arg> </constructor-arg>
</bean> </bean>
<!-- ================= METHOD INVOCATION AUTHORIZATION ==================== --> <!-- ================= METHOD INVOCATION AUTHORIZATION ==================== -->
<bean id="methodSecurityAdvisor" class="org.acegisecurity.intercept.method.aopalliance.MethodDefinitionSourceAdvisor" autowire="constructor"/> <bean id="methodSecurityAdvisor" class="org.springframework.security.intercept.method.aopalliance.MethodDefinitionSourceAdvisor" autowire="constructor"/>
<bean id="methodSecurityInterceptor" class="org.acegisecurity.intercept.method.aopalliance.MethodSecurityInterceptor"> <bean id="methodSecurityInterceptor" class="org.springframework.security.intercept.method.aopalliance.MethodSecurityInterceptor">
<property name="authenticationManager"><ref bean="authenticationManager"/></property> <property name="authenticationManager"><ref bean="authenticationManager"/></property>
<property name="accessDecisionManager"><ref local="businessAccessDecisionManager"/></property> <property name="accessDecisionManager"><ref local="businessAccessDecisionManager"/></property>
<property name="afterInvocationManager"><ref local="afterInvocationManager"/></property> <property name="afterInvocationManager"><ref local="afterInvocationManager"/></property>

View File

@ -1,12 +1,12 @@
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion> <modelVersion>4.0.0</modelVersion>
<parent> <parent>
<groupId>org.acegisecurity</groupId> <groupId>org.springframework.security</groupId>
<artifactId>acegi-security-parent</artifactId> <artifactId>spring-security-parent</artifactId>
<version>2.0-SNAPSHOT</version> <version>2.0-SNAPSHOT</version>
</parent> </parent>
<groupId>org.acegisecurity</groupId> <groupId>org.springframework.security</groupId>
<artifactId>acegi-security-samples</artifactId> <artifactId>spring-security-samples</artifactId>
<name>Acegi Security Samples</name> <name>Acegi Security Samples</name>
<packaging>pom</packaging> <packaging>pom</packaging>
<modules> <modules>

View File

@ -2,18 +2,18 @@
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion> <modelVersion>4.0.0</modelVersion>
<parent> <parent>
<groupId>org.acegisecurity</groupId> <groupId>org.springframework.security</groupId>
<artifactId>acegi-security-samples</artifactId> <artifactId>spring-security-samples</artifactId>
<version>2.0-SNAPSHOT</version> <version>2.0-SNAPSHOT</version>
</parent> </parent>
<groupId>org.acegisecurity</groupId> <groupId>org.springframework.security</groupId>
<artifactId>acegi-security-samples-tutorial</artifactId> <artifactId>spring-security-samples-tutorial</artifactId>
<name>Acegi Security Samples - Tutorial</name> <name>Acegi Security Samples - Tutorial</name>
<packaging>war</packaging> <packaging>war</packaging>
<dependencies> <dependencies>
<dependency> <dependency>
<groupId>org.acegisecurity</groupId> <groupId>org.springframework.security</groupId>
<artifactId>acegi-security</artifactId> <artifactId>spring-security-core</artifactId>
<version>${project.version}</version> <version>${project.version}</version>
</dependency> </dependency>
<dependency> <dependency>

View File

@ -18,7 +18,7 @@
<beans> <beans>
<bean id="filterChainProxy" class="org.acegisecurity.util.FilterChainProxy"> <bean id="filterChainProxy" class="org.springframework.security.util.FilterChainProxy">
<property name="filterInvocationDefinitionSource"> <property name="filterInvocationDefinitionSource">
<value><![CDATA[ <value><![CDATA[
CONVERT_URL_TO_LOWERCASE_BEFORE_COMPARISON CONVERT_URL_TO_LOWERCASE_BEFORE_COMPARISON
@ -28,19 +28,19 @@
</property> </property>
</bean> </bean>
<bean id="httpSessionContextIntegrationFilter" class="org.acegisecurity.context.HttpSessionContextIntegrationFilter"/> <bean id="httpSessionContextIntegrationFilter" class="org.springframework.security.context.HttpSessionContextIntegrationFilter"/>
<bean id="logoutFilter" class="org.acegisecurity.ui.logout.LogoutFilter"> <bean id="logoutFilter" class="org.springframework.security.ui.logout.LogoutFilter">
<constructor-arg value="/index.jsp"/> <!-- URL redirected to after logout --> <constructor-arg value="/index.jsp"/> <!-- URL redirected to after logout -->
<constructor-arg> <constructor-arg>
<list> <list>
<ref bean="rememberMeServices"/> <ref bean="rememberMeServices"/>
<bean class="org.acegisecurity.ui.logout.SecurityContextLogoutHandler"/> <bean class="org.springframework.security.ui.logout.SecurityContextLogoutHandler"/>
</list> </list>
</constructor-arg> </constructor-arg>
</bean> </bean>
<bean id="authenticationProcessingFilter" class="org.acegisecurity.ui.webapp.AuthenticationProcessingFilter"> <bean id="authenticationProcessingFilter" class="org.springframework.security.ui.webapp.AuthenticationProcessingFilter">
<property name="authenticationManager" ref="authenticationManager"/> <property name="authenticationManager" ref="authenticationManager"/>
<property name="authenticationFailureUrl" value="/acegilogin.jsp?login_error=1"/> <property name="authenticationFailureUrl" value="/acegilogin.jsp?login_error=1"/>
<property name="defaultTargetUrl" value="/"/> <property name="defaultTargetUrl" value="/"/>
@ -48,41 +48,41 @@
<property name="rememberMeServices" ref="rememberMeServices"/> <property name="rememberMeServices" ref="rememberMeServices"/>
</bean> </bean>
<bean id="securityContextHolderAwareRequestFilter" class="org.acegisecurity.wrapper.SecurityContextHolderAwareRequestFilter"/> <bean id="securityContextHolderAwareRequestFilter" class="org.springframework.security.wrapper.SecurityContextHolderAwareRequestFilter"/>
<bean id="rememberMeProcessingFilter" class="org.acegisecurity.ui.rememberme.RememberMeProcessingFilter"> <bean id="rememberMeProcessingFilter" class="org.springframework.security.ui.rememberme.RememberMeProcessingFilter">
<property name="authenticationManager" ref="authenticationManager"/> <property name="authenticationManager" ref="authenticationManager"/>
<property name="rememberMeServices" ref="rememberMeServices"/> <property name="rememberMeServices" ref="rememberMeServices"/>
</bean> </bean>
<bean id="anonymousProcessingFilter" class="org.acegisecurity.providers.anonymous.AnonymousProcessingFilter"> <bean id="anonymousProcessingFilter" class="org.springframework.security.providers.anonymous.AnonymousProcessingFilter">
<property name="key" value="changeThis"/> <property name="key" value="changeThis"/>
<property name="userAttribute" value="anonymousUser,ROLE_ANONYMOUS"/> <property name="userAttribute" value="anonymousUser,ROLE_ANONYMOUS"/>
</bean> </bean>
<bean id="exceptionTranslationFilter" class="org.acegisecurity.ui.ExceptionTranslationFilter"> <bean id="exceptionTranslationFilter" class="org.springframework.security.ui.ExceptionTranslationFilter">
<property name="authenticationEntryPoint"> <property name="authenticationEntryPoint">
<bean class="org.acegisecurity.ui.webapp.AuthenticationProcessingFilterEntryPoint"> <bean class="org.springframework.security.ui.webapp.AuthenticationProcessingFilterEntryPoint">
<property name="loginFormUrl" value="/acegilogin.jsp"/> <property name="loginFormUrl" value="/acegilogin.jsp"/>
<property name="forceHttps" value="false"/> <property name="forceHttps" value="false"/>
</bean> </bean>
</property> </property>
<property name="accessDeniedHandler"> <property name="accessDeniedHandler">
<bean class="org.acegisecurity.ui.AccessDeniedHandlerImpl"> <bean class="org.springframework.security.ui.AccessDeniedHandlerImpl">
<property name="errorPage" value="/accessDenied.jsp"/> <property name="errorPage" value="/accessDenied.jsp"/>
</bean> </bean>
</property> </property>
</bean> </bean>
<bean id="filterInvocationInterceptor" class="org.acegisecurity.intercept.web.FilterSecurityInterceptor"> <bean id="filterInvocationInterceptor" class="org.springframework.security.intercept.web.FilterSecurityInterceptor">
<property name="authenticationManager" ref="authenticationManager"/> <property name="authenticationManager" ref="authenticationManager"/>
<property name="accessDecisionManager"> <property name="accessDecisionManager">
<bean class="org.acegisecurity.vote.AffirmativeBased"> <bean class="org.springframework.security.vote.AffirmativeBased">
<property name="allowIfAllAbstainDecisions" value="false"/> <property name="allowIfAllAbstainDecisions" value="false"/>
<property name="decisionVoters"> <property name="decisionVoters">
<list> <list>
<bean class="org.acegisecurity.vote.RoleVoter"/> <bean class="org.springframework.security.vote.RoleVoter"/>
<bean class="org.acegisecurity.vote.AuthenticatedVoter"/> <bean class="org.springframework.security.vote.AuthenticatedVoter"/>
</list> </list>
</property> </property>
</bean> </bean>
@ -98,31 +98,31 @@
</property> </property>
</bean> </bean>
<bean id="rememberMeServices" class="org.acegisecurity.ui.rememberme.TokenBasedRememberMeServices"> <bean id="rememberMeServices" class="org.springframework.security.ui.rememberme.TokenBasedRememberMeServices">
<property name="userDetailsService" ref="userDetailsService"/> <property name="userDetailsService" ref="userDetailsService"/>
<property name="key" value="changeThis"/> <property name="key" value="changeThis"/>
</bean> </bean>
<bean id="authenticationManager" class="org.acegisecurity.providers.ProviderManager"> <bean id="authenticationManager" class="org.springframework.security.providers.ProviderManager">
<property name="providers"> <property name="providers">
<list> <list>
<ref local="daoAuthenticationProvider"/> <ref local="daoAuthenticationProvider"/>
<bean class="org.acegisecurity.providers.anonymous.AnonymousAuthenticationProvider"> <bean class="org.springframework.security.providers.anonymous.AnonymousAuthenticationProvider">
<property name="key" value="changeThis"/> <property name="key" value="changeThis"/>
</bean> </bean>
<bean class="org.acegisecurity.providers.rememberme.RememberMeAuthenticationProvider"> <bean class="org.springframework.security.providers.rememberme.RememberMeAuthenticationProvider">
<property name="key" value="changeThis"/> <property name="key" value="changeThis"/>
</bean> </bean>
</list> </list>
</property> </property>
</bean> </bean>
<bean id="daoAuthenticationProvider" class="org.acegisecurity.providers.dao.DaoAuthenticationProvider"> <bean id="daoAuthenticationProvider" class="org.springframework.security.providers.dao.DaoAuthenticationProvider">
<property name="userDetailsService" ref="userDetailsService"/> <property name="userDetailsService" ref="userDetailsService"/>
</bean> </bean>
<!-- UserDetailsService is the most commonly frequently Acegi Security interface implemented by end users --> <!-- UserDetailsService is the most commonly frequently Acegi Security interface implemented by end users -->
<bean id="userDetailsService" class="org.acegisecurity.userdetails.memory.InMemoryDaoImpl"> <bean id="userDetailsService" class="org.springframework.security.userdetails.memory.InMemoryDaoImpl">
<property name="userProperties"> <property name="userProperties">
<bean class="org.springframework.beans.factory.config.PropertiesFactoryBean"> <bean class="org.springframework.beans.factory.config.PropertiesFactoryBean">
<property name="location" value="/WEB-INF/users.properties"/> <property name="location" value="/WEB-INF/users.properties"/>
@ -131,6 +131,6 @@
</bean> </bean>
<!-- This bean is optional; it isn't used by any other bean as it only listens and logs --> <!-- This bean is optional; it isn't used by any other bean as it only listens and logs -->
<bean id="loggerListener" class="org.acegisecurity.event.authentication.LoggerListener"/> <bean id="loggerListener" class="org.springframework.security.event.authentication.LoggerListener"/>
</beans> </beans>

View File

@ -1,7 +1,7 @@
# Global logging configuration # Global logging configuration
log4j.rootLogger=WARN, stdout, fileout log4j.rootLogger=WARN, stdout, fileout
log4j.logger.org.acegisecurity=DEBUG, stdout, fileout log4j.logger.org.springframework.security=DEBUG, stdout, fileout
# Console output... # Console output...
log4j.appender.stdout=org.apache.log4j.ConsoleAppender log4j.appender.stdout=org.apache.log4j.ConsoleAppender

View File

@ -12,7 +12,7 @@
<web-app> <web-app>
<display-name>Acegi Security Tutorial Application</display-name> <display-name>Acegi Security Tutorial Application</display-name>
<!-- <!--
- Location of the XML file that defines the root application context - Location of the XML file that defines the root application context
- Applied by ContextLoaderListener. - Applied by ContextLoaderListener.
@ -23,13 +23,13 @@
/WEB-INF/applicationContext-acegi-security.xml /WEB-INF/applicationContext-acegi-security.xml
</param-value> </param-value>
</context-param> </context-param>
<filter> <filter>
<filter-name>Acegi Filter Chain Proxy</filter-name> <filter-name>Acegi Filter Chain Proxy</filter-name>
<filter-class>org.acegisecurity.util.FilterToBeanProxy</filter-class> <filter-class>org.springframework.acegisecurityrk.acegisecurity.util.FilterToBeanProxy</filter-class>
<init-param> <init-param>
<param-name>targetClass</param-name> <param-name>targetClass</param-name>
<param-value>org.acegisecurity.util.FilterChainProxy</param-value> <param-value>org.springframework.security.util.FilterChainProxy</param-value>
</init-param> </init-param>
</filter> </filter>
@ -37,10 +37,10 @@
<filter-name>Acegi Filter Chain Proxy</filter-name> <filter-name>Acegi Filter Chain Proxy</filter-name>
<url-pattern>/*</url-pattern> <url-pattern>/*</url-pattern>
</filter-mapping> </filter-mapping>
<!-- <!--
- Loads the root application context of this web app at startup. - Loads the root application context of this web app at startup.
- The application context is then available via - The application context is then available via
- WebApplicationContextUtils.getWebApplicationContext(servletContext). - WebApplicationContextUtils.getWebApplicationContext(servletContext).
--> -->
<listener> <listener>

View File

@ -1,6 +1,6 @@
<%@ page import="org.acegisecurity.context.SecurityContextHolder" %> <%@ page import="org.springframework.security.context.SecurityContextHolder" %>
<%@ page import="org.acegisecurity.Authentication" %> <%@ page import="org.springframework.security.Authentication" %>
<%@ page import="org.acegisecurity.ui.AccessDeniedHandlerImpl" %> <%@ page import="org.springframework.security.ui.AccessDeniedHandlerImpl" %>
<h1>Sorry, access is denied</h1> <h1>Sorry, access is denied</h1>

View File

@ -1,7 +1,7 @@
<%@ taglib prefix='c' uri='http://java.sun.com/jstl/core' %> <%@ taglib prefix='c' uri='http://java.sun.com/jstl/core' %>
<%@ page import="org.acegisecurity.ui.AbstractProcessingFilter" %> <%@ page import="org.springframework.security.ui.AbstractProcessingFilter" %>
<%@ page import="org.acegisecurity.ui.webapp.AuthenticationProcessingFilter" %> <%@ page import="org.springframework.security.ui.webapp.AuthenticationProcessingFilter" %>
<%@ page import="org.acegisecurity.AuthenticationException" %> <%@ page import="org.springframework.security.AuthenticationException" %>
<html> <html>
<head> <head>
@ -18,8 +18,8 @@
<p>username <b>scott</b>, password <b>wombat</b> (normal user) <p>username <b>scott</b>, password <b>wombat</b> (normal user)
<p>username <b>peter</b>, password <b>opal</b> (user disabled) <p>username <b>peter</b>, password <b>opal</b> (user disabled)
<p> <p>
<%-- this form-login-page form is also used as the <%-- this form-login-page form is also used as the
form-error-page to ask for a login again. form-error-page to ask for a login again.
--%> --%>
<c:if test="${not empty param.login_error}"> <c:if test="${not empty param.login_error}">
@ -31,7 +31,7 @@
<form action="<c:url value='j_acegi_security_check'/>" method="POST"> <form action="<c:url value='j_acegi_security_check'/>" method="POST">
<table> <table>
<tr><td>User:</td><td><input type='text' name='j_username' <c:if test="${not empty param.login_error}">value='<c:out value="${ACEGI_SECURITY_LAST_USERNAME}"/>'</c:if>></td></tr> <tr><td>User:</td><td><input type='text' name='j_username' <c:if test="${not empty param.login_error}">value='<c:out value="${ACEGI_SECURITY_LAST_USERNAME}"/>'</c:if>></td></tr>
<tr><td>Password:</td><td><input type='password' name='j_password'></td></tr> <tr><td>Password:</td><td><input type='password' name='j_password'></td></tr>
<tr><td><input type="checkbox" name="_acegi_security_remember_me"></td><td>Don't ask for my password for two weeks</td></tr> <tr><td><input type="checkbox" name="_acegi_security_remember_me"></td><td>Don't ask for my password for two weeks</td></tr>