public class AffirmativeBased extends AbstractAccessDecisionManager
AccessDecisionManager
that grants access if
any AccessDecisionVoter
returns an affirmative response.logger, messages
Constructor and Description |
---|
AffirmativeBased(java.util.List<AccessDecisionVoter<? extends java.lang.Object>> decisionVoters) |
Modifier and Type | Method and Description |
---|---|
void |
decide(Authentication authentication,
java.lang.Object object,
java.util.Collection<ConfigAttribute> configAttributes)
This concrete implementation simply polls all configured
AccessDecisionVoter s and grants access if any
AccessDecisionVoter voted affirmatively. |
afterPropertiesSet, checkAllowIfAllAbstainDecisions, getDecisionVoters, isAllowIfAllAbstainDecisions, setAllowIfAllAbstainDecisions, setMessageSource, supports, supports
public AffirmativeBased(java.util.List<AccessDecisionVoter<? extends java.lang.Object>> decisionVoters)
public void decide(Authentication authentication, java.lang.Object object, java.util.Collection<ConfigAttribute> configAttributes) throws AccessDeniedException
AccessDecisionVoter
s and grants access if any
AccessDecisionVoter
voted affirmatively. Denies access only if there
was a deny vote AND no affirmative votes.
If every AccessDecisionVoter
abstained from voting, the decision will
be based on the AbstractAccessDecisionManager.isAllowIfAllAbstainDecisions()
property (defaults to
false).
authentication
- the caller invoking the methodobject
- the secured objectconfigAttributes
- the configuration attributes associated with the method
being invokedAccessDeniedException
- if access is denied