SEC-1284: Added proxy-target-class attribute to method security namespace

This commit is contained in:
Luke Taylor 2009-11-17 16:19:05 +00:00
parent d84542cf88
commit 9eae7b899c
3 changed files with 6 additions and 3 deletions

View File

@ -206,7 +206,9 @@ global-method-security.attlist &=
global-method-security.attlist &= global-method-security.attlist &=
## Allows the advice "order" to be set for the method security interceptor. ## Allows the advice "order" to be set for the method security interceptor.
attribute order {xsd:token}? attribute order {xsd:token}?
global-method-security.attlist &=
attribute proxy-target-class {boolean}?
after-invocation-provider = after-invocation-provider =
## Allows addition of extra AfterInvocationProvider beans which should be called by the MethodSecurityInterceptor created by global-method-security. ## Allows addition of extra AfterInvocationProvider beans which should be called by the MethodSecurityInterceptor created by global-method-security.
element after-invocation-provider {ref} element after-invocation-provider {ref}
@ -325,7 +327,7 @@ logout.attlist &=
logout.attlist &= logout.attlist &=
## Specifies whether a logout also causes HttpSession invalidation, which is generally desirable. If unspecified, defaults to true. ## Specifies whether a logout also causes HttpSession invalidation, which is generally desirable. If unspecified, defaults to true.
attribute invalidate-session {boolean}? attribute invalidate-session {boolean}?
request-cache = request-cache =
## Allow the RequestCache used for saving requests during the login process to be set ## Allow the RequestCache used for saving requests during the login process to be set
element request-cache {ref} element request-cache {ref}

View File

@ -538,6 +538,7 @@
<xs:documentation>Allows the advice "order" to be set for the method security interceptor.</xs:documentation> <xs:documentation>Allows the advice "order" to be set for the method security interceptor.</xs:documentation>
</xs:annotation> </xs:annotation>
</xs:attribute> </xs:attribute>
<xs:attribute name="proxy-target-class" type="security:boolean"/>
</xs:attributeGroup> </xs:attributeGroup>

View File

@ -48,7 +48,7 @@ public class GlobalMethodSecurityBeanDefinitionParserTests {
public void loadContext() { public void loadContext() {
setContext( setContext(
"<b:bean id='target' class='org.springframework.security.access.annotation.BusinessServiceImpl'/>" + "<b:bean id='target' class='org.springframework.security.access.annotation.BusinessServiceImpl'/>" +
"<global-method-security order='1001'>" + "<global-method-security order='1001' proxy-target-class='false' >" +
" <protect-pointcut expression='execution(* *.someUser*(..))' access='ROLE_USER'/>" + " <protect-pointcut expression='execution(* *.someUser*(..))' access='ROLE_USER'/>" +
" <protect-pointcut expression='execution(* *.someAdmin*(..))' access='ROLE_ADMIN'/>" + " <protect-pointcut expression='execution(* *.someAdmin*(..))' access='ROLE_ADMIN'/>" +
"</global-method-security>" + ConfigTestUtils.AUTH_PROVIDER_XML "</global-method-security>" + ConfigTestUtils.AUTH_PROVIDER_XML