public class UnanimousBased extends AbstractAccessDecisionManager
AccessDecisionManager that requires all
voters to abstain or grant access.logger, messages| Constructor and Description |
|---|
UnanimousBased(List<AccessDecisionVoter<? extends Object>> decisionVoters) |
| Modifier and Type | Method and Description |
|---|---|
void |
decide(Authentication authentication,
Object object,
Collection<ConfigAttribute> attributes)
This concrete implementation polls all configured
AccessDecisionVoters for
each ConfigAttribute and grants access if only grant (or abstain)
votes were received. |
afterPropertiesSet, checkAllowIfAllAbstainDecisions, getDecisionVoters, isAllowIfAllAbstainDecisions, setAllowIfAllAbstainDecisions, setMessageSource, supports, supportspublic UnanimousBased(List<AccessDecisionVoter<? extends Object>> decisionVoters)
public void decide(Authentication authentication, Object object, Collection<ConfigAttribute> attributes) throws AccessDeniedException
AccessDecisionVoters for
each ConfigAttribute 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 each AccessDecisionVoter knows only
about a single ConfigAttribute at a time.
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 objectattributes - the configuration attributes associated with the method being
invokedAccessDeniedException - if access is denied