Class UnanimousBased
- java.lang.Object
-
- org.springframework.security.access.vote.AbstractAccessDecisionManager
-
- org.springframework.security.access.vote.UnanimousBased
-
- All Implemented Interfaces:
org.springframework.beans.factory.Aware
,org.springframework.beans.factory.InitializingBean
,org.springframework.context.MessageSourceAware
,AccessDecisionManager
public class UnanimousBased extends AbstractAccessDecisionManager
Simple concrete implementation ofAccessDecisionManager
that requires all voters to abstain or grant access.
-
-
Field Summary
-
Fields inherited from class org.springframework.security.access.vote.AbstractAccessDecisionManager
logger, messages
-
-
Constructor Summary
Constructors Constructor Description UnanimousBased(java.util.List<AccessDecisionVoter<?>> decisionVoters)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
decide(Authentication authentication, java.lang.Object object, java.util.Collection<ConfigAttribute> attributes)
This concrete implementation polls all configuredAccessDecisionVoter
s for eachConfigAttribute
and grants access if only grant (or abstain) votes were received.-
Methods inherited from class org.springframework.security.access.vote.AbstractAccessDecisionManager
afterPropertiesSet, checkAllowIfAllAbstainDecisions, getDecisionVoters, isAllowIfAllAbstainDecisions, setAllowIfAllAbstainDecisions, setMessageSource, supports, supports, toString
-
-
-
-
Constructor Detail
-
UnanimousBased
public UnanimousBased(java.util.List<AccessDecisionVoter<?>> decisionVoters)
-
-
Method Detail
-
decide
public void decide(Authentication authentication, java.lang.Object object, java.util.Collection<ConfigAttribute> attributes) throws AccessDeniedException
This concrete implementation polls all configuredAccessDecisionVoter
s for eachConfigAttribute
and grants access if only grant (or abstain) votes were received.Other voting implementations usually pass the entire list of ConfigAttributes to the
AccessDecisionVoter
. This implementation differs in that eachAccessDecisionVoter
knows only about a singleConfigAttribute
at a time.If every
AccessDecisionVoter
abstained from voting, the decision will be based on theAbstractAccessDecisionManager.isAllowIfAllAbstainDecisions()
property (defaults to false).- Parameters:
authentication
- the caller invoking the methodobject
- the secured objectattributes
- the configuration attributes associated with the method being invoked- Throws:
AccessDeniedException
- if access is denied
-
-