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