|
|
|
|
@ -15,34 +15,34 @@
@@ -15,34 +15,34 @@
|
|
|
|
|
<property name="username" value="sa"/> |
|
|
|
|
<property name="password" value=""/> |
|
|
|
|
</bean> |
|
|
|
|
|
|
|
|
|
<bean id="transactionInterceptor" class="org.springframework.transaction.interceptor.TransactionInterceptor"> |
|
|
|
|
<property name="transactionAttributeSource"> |
|
|
|
|
<value> |
|
|
|
|
sample.dms.secured.SecureDocumentDao.*=PROPAGATION_REQUIRED |
|
|
|
|
sample.dms.DocumentDao.*=PROPAGATION_REQUIRED |
|
|
|
|
|
|
|
|
|
<bean id="transactionInterceptor" class="org.springframework.transaction.interceptor.TransactionInterceptor"> |
|
|
|
|
<property name="transactionAttributeSource"> |
|
|
|
|
<value> |
|
|
|
|
sample.dms.secured.SecureDocumentDao.*=PROPAGATION_REQUIRED |
|
|
|
|
sample.dms.DocumentDao.*=PROPAGATION_REQUIRED |
|
|
|
|
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> |
|
|
|
|
</property> |
|
|
|
|
<property name="transactionManager" ref="transactionManager" /> |
|
|
|
|
</bean> |
|
|
|
|
|
|
|
|
|
<bean id="documentDao" class="sample.dms.secured.SecureDocumentDaoImpl"> |
|
|
|
|
<constructor-arg ref="aclService"/> |
|
|
|
|
<property name="dataSource" ref="dataSource"/> |
|
|
|
|
</bean> |
|
|
|
|
<bean id="documentDao" class="sample.dms.secured.SecureDocumentDaoImpl"> |
|
|
|
|
<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"/> |
|
|
|
|
<constructor-arg ref="transactionManager"/> |
|
|
|
|
<constructor-arg ref="aclService"/> |
|
|
|
|
</bean> |
|
|
|
|
<bean id="dataSourcePopulator" class="sample.dms.secured.SecureDataSourcePopulator"> |
|
|
|
|
<constructor-arg ref="dataSource"/> |
|
|
|
|
<constructor-arg ref="documentDao"/> |
|
|
|
|
<constructor-arg ref="transactionManager"/> |
|
|
|
|
<constructor-arg ref="aclService"/> |
|
|
|
|
</bean> |
|
|
|
|
|
|
|
|
|
<!-- =================================== SECURITY DEFINITION BEANS ======================================== --> |
|
|
|
|
<!-- =================================== SECURITY DEFINITION BEANS ======================================== --> |
|
|
|
|
|
|
|
|
|
<!-- ======================== AUTHENTICATION (note there is no UI and this is for integration tests only) ======================= --> |
|
|
|
|
|
|
|
|
|
@ -64,7 +64,7 @@
@@ -64,7 +64,7 @@
|
|
|
|
|
<property name="userDetailsService" ref="jdbcDaoImpl"/> |
|
|
|
|
<property name="userCache" ref="userCache"/> |
|
|
|
|
<property name="passwordEncoder"> |
|
|
|
|
<bean class="org.springframework.security.providers.encoding.Md5PasswordEncoder"/> |
|
|
|
|
<bean class="org.springframework.security.providers.encoding.Md5PasswordEncoder"/> |
|
|
|
|
</property> |
|
|
|
|
</bean> |
|
|
|
|
|
|
|
|
|
@ -115,28 +115,28 @@
@@ -115,28 +115,28 @@
|
|
|
|
|
<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.springframework.security.vote.AclEntryVoter"> |
|
|
|
|
<bean id="aclAbstractElementWriteParentVoter" class="org.springframework.security.acls.vote.AclEntryVoter"> |
|
|
|
|
<constructor-arg ref="aclService"/> |
|
|
|
|
<constructor-arg value="ACL_ABSTRACT_ELEMENT_WRITE_PARENT"/> |
|
|
|
|
<constructor-arg> |
|
|
|
|
<list> |
|
|
|
|
<list> |
|
|
|
|
<ref local="org.springframework.security.acls.domain.BasePermission.ADMINISTRATION"/> |
|
|
|
|
<ref local="org.springframework.security.acls.domain.BasePermission.WRITE"/> |
|
|
|
|
</list> |
|
|
|
|
</list> |
|
|
|
|
</constructor-arg> |
|
|
|
|
<property name="processDomainObjectClass"><value>sample.dms.AbstractElement</value></property> |
|
|
|
|
<property name="processDomainObjectClass" value="sample.dms.AbstractElement"/> |
|
|
|
|
<property name="internalMethod" value="getParent"/> |
|
|
|
|
</bean> |
|
|
|
|
|
|
|
|
|
<!-- An access decision voter that reads ACL_ABSTRACT_ELEMENT_WRITE configuration settings --> |
|
|
|
|
<bean id="aclAbstractElementWriteVoter" class="org.springframework.security.vote.AclEntryVoter"> |
|
|
|
|
<bean id="aclAbstractElementWriteVoter" class="org.springframework.security.acls.vote.AclEntryVoter"> |
|
|
|
|
<constructor-arg ref="aclService"/> |
|
|
|
|
<constructor-arg value="ACL_ABSTRACT_ELEMENT_WRITE"/> |
|
|
|
|
<constructor-arg> |
|
|
|
|
<list> |
|
|
|
|
<list> |
|
|
|
|
<ref local="org.springframework.security.acls.domain.BasePermission.ADMINISTRATION"/> |
|
|
|
|
<ref local="org.springframework.security.acls.domain.BasePermission.WRITE"/> |
|
|
|
|
</list> |
|
|
|
|
</list> |
|
|
|
|
</constructor-arg> |
|
|
|
|
<property name="processDomainObjectClass"><value>sample.dms.AbstractElement</value></property> |
|
|
|
|
</bean> |
|
|
|
|
@ -155,47 +155,47 @@
@@ -155,47 +155,47 @@
|
|
|
|
|
|
|
|
|
|
<!-- ========= ACCESS CONTROL LIST LOOKUP MANAGER DEFINITIONS ========= --> |
|
|
|
|
|
|
|
|
|
<bean id="aclCache" class="org.springframework.security.acls.jdbc.EhCacheBasedAclCache"> |
|
|
|
|
<constructor-arg> |
|
|
|
|
<bean class="org.springframework.cache.ehcache.EhCacheFactoryBean"> |
|
|
|
|
<property name="cacheManager"> |
|
|
|
|
<bean class="org.springframework.cache.ehcache.EhCacheManagerFactoryBean"/> |
|
|
|
|
</property> |
|
|
|
|
<property name="cacheName" value="aclCache"/> |
|
|
|
|
</bean> |
|
|
|
|
</constructor-arg> |
|
|
|
|
</bean> |
|
|
|
|
|
|
|
|
|
<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.springframework.security.acls.domain.ConsoleAuditLogger"/> |
|
|
|
|
</constructor-arg> |
|
|
|
|
</bean> |
|
|
|
|
|
|
|
|
|
<bean id="aclAuthorizationStrategy" class="org.springframework.security.acls.domain.AclAuthorizationStrategyImpl"> |
|
|
|
|
<constructor-arg> |
|
|
|
|
<list> |
|
|
|
|
<bean class="org.springframework.security.GrantedAuthorityImpl"> |
|
|
|
|
<constructor-arg value="ROLE_ADMINISTRATOR"/> |
|
|
|
|
</bean> |
|
|
|
|
<bean class="org.springframework.security.GrantedAuthorityImpl"> |
|
|
|
|
<constructor-arg value="ROLE_ADMINISTRATOR"/> |
|
|
|
|
</bean> |
|
|
|
|
<bean class="org.springframework.security.GrantedAuthorityImpl"> |
|
|
|
|
<constructor-arg value="ROLE_ADMINISTRATOR"/> |
|
|
|
|
</bean> |
|
|
|
|
</list> |
|
|
|
|
</constructor-arg> |
|
|
|
|
</bean> |
|
|
|
|
|
|
|
|
|
<bean id="aclService" class="org.springframework.security.acls.jdbc.JdbcMutableAclService"> |
|
|
|
|
<constructor-arg ref="dataSource"/> |
|
|
|
|
<constructor-arg ref="lookupStrategy"/> |
|
|
|
|
<constructor-arg ref="aclCache"/> |
|
|
|
|
</bean> |
|
|
|
|
<bean id="aclCache" class="org.springframework.security.acls.jdbc.EhCacheBasedAclCache"> |
|
|
|
|
<constructor-arg> |
|
|
|
|
<bean class="org.springframework.cache.ehcache.EhCacheFactoryBean"> |
|
|
|
|
<property name="cacheManager"> |
|
|
|
|
<bean class="org.springframework.cache.ehcache.EhCacheManagerFactoryBean"/> |
|
|
|
|
</property> |
|
|
|
|
<property name="cacheName" value="aclCache"/> |
|
|
|
|
</bean> |
|
|
|
|
</constructor-arg> |
|
|
|
|
</bean> |
|
|
|
|
|
|
|
|
|
<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.springframework.security.acls.domain.ConsoleAuditLogger"/> |
|
|
|
|
</constructor-arg> |
|
|
|
|
</bean> |
|
|
|
|
|
|
|
|
|
<bean id="aclAuthorizationStrategy" class="org.springframework.security.acls.domain.AclAuthorizationStrategyImpl"> |
|
|
|
|
<constructor-arg> |
|
|
|
|
<list> |
|
|
|
|
<bean class="org.springframework.security.GrantedAuthorityImpl"> |
|
|
|
|
<constructor-arg value="ROLE_ADMINISTRATOR"/> |
|
|
|
|
</bean> |
|
|
|
|
<bean class="org.springframework.security.GrantedAuthorityImpl"> |
|
|
|
|
<constructor-arg value="ROLE_ADMINISTRATOR"/> |
|
|
|
|
</bean> |
|
|
|
|
<bean class="org.springframework.security.GrantedAuthorityImpl"> |
|
|
|
|
<constructor-arg value="ROLE_ADMINISTRATOR"/> |
|
|
|
|
</bean> |
|
|
|
|
</list> |
|
|
|
|
</constructor-arg> |
|
|
|
|
</bean> |
|
|
|
|
|
|
|
|
|
<bean id="aclService" class="org.springframework.security.acls.jdbc.JdbcMutableAclService"> |
|
|
|
|
<constructor-arg ref="dataSource"/> |
|
|
|
|
<constructor-arg ref="lookupStrategy"/> |
|
|
|
|
<constructor-arg ref="aclCache"/> |
|
|
|
|
</bean> |
|
|
|
|
|
|
|
|
|
<!-- ============== "AFTER INTERCEPTION" AUTHORIZATION DEFINITIONS =========== --> |
|
|
|
|
|
|
|
|
|
@ -208,19 +208,19 @@
@@ -208,19 +208,19 @@
|
|
|
|
|
</bean> |
|
|
|
|
|
|
|
|
|
<!-- Processes AFTER_ACL_COLLECTION_READ configuration settings --> |
|
|
|
|
<bean id="afterAclCollectionRead" class="org.springframework.security.afterinvocation.AclEntryAfterInvocationCollectionFilteringProvider"> |
|
|
|
|
<bean id="afterAclCollectionRead" class="org.springframework.security.acls.afterinvocation.AclEntryAfterInvocationCollectionFilteringProvider"> |
|
|
|
|
<constructor-arg ref="aclService"/> |
|
|
|
|
<constructor-arg> |
|
|
|
|
<list> |
|
|
|
|
<list> |
|
|
|
|
<ref local="org.springframework.security.acls.domain.BasePermission.ADMINISTRATION"/> |
|
|
|
|
<ref local="org.springframework.security.acls.domain.BasePermission.READ"/> |
|
|
|
|
</list> |
|
|
|
|
</list> |
|
|
|
|
</constructor-arg> |
|
|
|
|
</bean> |
|
|
|
|
|
|
|
|
|
<!-- ================= METHOD INVOCATION AUTHORIZATION ==================== --> |
|
|
|
|
|
|
|
|
|
<bean id="methodSecurityAdvisor" class="org.springframework.security.intercept.method.aopalliance.MethodDefinitionSourceAdvisor" autowire="constructor"/> |
|
|
|
|
<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> |
|
|
|
|
|