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