org.springframework.security.access.vote
Class AbstractAccessDecisionManager
java.lang.Object
org.springframework.security.access.vote.AbstractAccessDecisionManager
- All Implemented Interfaces:
- Aware, InitializingBean, MessageSourceAware, AccessDecisionManager
- Direct Known Subclasses:
- AffirmativeBased, ConsensusBased, UnanimousBased
public abstract class AbstractAccessDecisionManager
- extends Object
- implements AccessDecisionManager, InitializingBean, MessageSourceAware
Abstract implementation of AccessDecisionManager
.
Handles configuration of a bean context defined list of
AccessDecisionVoter
s and the access control behaviour if all voters
abstain from voting (defaults to deny access).
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
logger
protected final org.apache.commons.logging.Log logger
messages
protected MessageSourceAccessor messages
AbstractAccessDecisionManager
protected AbstractAccessDecisionManager()
AbstractAccessDecisionManager
protected AbstractAccessDecisionManager(List<AccessDecisionVoter> decisionVoters)
afterPropertiesSet
public void afterPropertiesSet()
throws Exception
- Specified by:
afterPropertiesSet
in interface InitializingBean
- Throws:
Exception
checkAllowIfAllAbstainDecisions
protected final void checkAllowIfAllAbstainDecisions()
getDecisionVoters
public List<AccessDecisionVoter> getDecisionVoters()
isAllowIfAllAbstainDecisions
public boolean isAllowIfAllAbstainDecisions()
setAllowIfAllAbstainDecisions
public void setAllowIfAllAbstainDecisions(boolean allowIfAllAbstainDecisions)
setDecisionVoters
@Deprecated
public void setDecisionVoters(List<AccessDecisionVoter> newList)
- Deprecated. Use constructor
setMessageSource
public void setMessageSource(MessageSource messageSource)
- Specified by:
setMessageSource
in interface MessageSourceAware
supports
public boolean supports(ConfigAttribute attribute)
- Description copied from interface:
AccessDecisionManager
- Indicates whether this
AccessDecisionManager
is able to process authorization requests
presented with the passed ConfigAttribute
.This allows the
AbstractSecurityInterceptor
to check every configuration attribute can be consumed by the
configured AccessDecisionManager
and/or RunAsManager
and/or
AfterInvocationManager
.
- Specified by:
supports
in interface AccessDecisionManager
- Parameters:
attribute
- a configuration attribute that has been configured against the
AbstractSecurityInterceptor
- Returns:
- true if this
AccessDecisionManager
can support the passed configuration attribute
supports
public boolean supports(Class<?> clazz)
- Iterates through all
AccessDecisionVoter
s and ensures each can support the presented class.
If one or more voters cannot support the presented class, false
is returned.
- Specified by:
supports
in interface AccessDecisionManager
- Parameters:
clazz
- the type of secured object being presented
- Returns:
- true if this type is supported