org.springframework.security.access.intercept.aspectj
Class AspectJSecurityInterceptor
java.lang.Object
org.springframework.security.access.intercept.AbstractSecurityInterceptor
org.springframework.security.access.intercept.aspectj.AspectJSecurityInterceptor
- All Implemented Interfaces:
- InitializingBean, ApplicationEventPublisherAware, MessageSourceAware
public class AspectJSecurityInterceptor
- extends AbstractSecurityInterceptor
Provides security interception of AspectJ method invocations.
The SecurityMetadataSource
required by this security interceptor is of type
MethodSecurityMetadataSource
. This is shared with the AOP Alliance based security interceptor
(MethodSecurityInterceptor
), since both work with Java Method
s.
The secure object type is org.aspectj.lang.JoinPoint
, which is passed from the relevant
around()
advice. The around()
advice also passes an anonymous implementation of AspectJCallback
which contains the call for AspectJ to continue processing: return proceed();
.
Refer to AbstractSecurityInterceptor
for details on the workflow.
- Version:
- $Id: AspectJSecurityInterceptor.java 3655 2009-05-11 05:44:31Z ltaylor $
- Author:
- Ben Alex
Methods inherited from class org.springframework.security.access.intercept.AbstractSecurityInterceptor |
afterInvocation, afterPropertiesSet, beforeInvocation, getAccessDecisionManager, getAfterInvocationManager, getAuthenticationManager, getRunAsManager, isAlwaysReauthenticate, isRejectPublicInvocations, isValidateConfigAttributes, setAccessDecisionManager, setAfterInvocationManager, setAlwaysReauthenticate, setApplicationEventPublisher, setAuthenticationManager, setMessageSource, setRejectPublicInvocations, setRunAsManager, setValidateConfigAttributes |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
AspectJSecurityInterceptor
public AspectJSecurityInterceptor()
getSecureObjectClass
public Class<? extends Object> getSecureObjectClass()
- Description copied from class:
AbstractSecurityInterceptor
- Indicates the type of secure objects the subclass will be presenting to
the abstract parent for processing. This is used to ensure collaborators
wired to the
AbstractSecurityInterceptor
all support the
indicated secure object class.
- Specified by:
getSecureObjectClass
in class AbstractSecurityInterceptor
- Returns:
- the type of secure object the subclass provides services for
invoke
public Object invoke(org.aspectj.lang.JoinPoint jp,
AspectJCallback advisorProceed)
- This method should be used to enforce security on a
JoinPoint
.
- Parameters:
jp
- The AspectJ joint point being invoked which requires a security decisionadvisorProceed
- the advice-defined anonymous class that implements AspectJCallback
containing
a simple return proceed();
statement
- Returns:
- The returned value from the method invocation
obtainSecurityMetadataSource
public SecurityMetadataSource obtainSecurityMetadataSource()
- Specified by:
obtainSecurityMetadataSource
in class AbstractSecurityInterceptor
setSecurityMetadataSource
public void setSecurityMetadataSource(MethodSecurityMetadataSource newSource)
Copyright © 2004-2009 SpringSource, Inc. All Rights Reserved.