Class MessageExpressionVoter<T>
- All Implemented Interfaces:
- AccessDecisionVoter<org.springframework.messaging.Message<T>>
Message authorisation decisions. If a
 MessageExpressionConfigAttribute is found, then its expression is evaluated. If
 true, ACCESS_GRANTED is returned. If false, ACCESS_DENIED is returned.
 If no MessageExpressionConfigAttribute is found, then ACCESS_ABSTAIN is
 returned.- Since:
- 4.0
- 
Field SummaryFields inherited from interface org.springframework.security.access.AccessDecisionVoterACCESS_ABSTAIN, ACCESS_DENIED, ACCESS_GRANTED
- 
Constructor SummaryConstructors
- 
Method SummaryModifier and TypeMethodDescriptionvoidsetExpressionHandler(SecurityExpressionHandler<org.springframework.messaging.Message<T>> expressionHandler) Deprecated.booleanDeprecated.Indicates whether theAccessDecisionVoterimplementation is able to provide access control votes for the indicated secured object type.booleansupports(ConfigAttribute attribute) Deprecated.Indicates whether thisAccessDecisionVoteris able to vote on the passedConfigAttribute.intvote(Authentication authentication, org.springframework.messaging.Message<T> message, Collection<ConfigAttribute> attributes) Deprecated.Indicates whether or not access is granted.
- 
Constructor Details- 
MessageExpressionVoterpublic MessageExpressionVoter()Deprecated.
 
- 
- 
Method Details- 
votepublic int vote(Authentication authentication, org.springframework.messaging.Message<T> message, Collection<ConfigAttribute> attributes) Deprecated.Description copied from interface:AccessDecisionVoterIndicates whether or not access is granted.The decision must be affirmative ( ACCESS_GRANTED), negative (ACCESS_DENIED) or theAccessDecisionVotercan abstain (ACCESS_ABSTAIN) from voting. Under no circumstances should implementing classes return any other value. If a weighting of results is desired, this should be handled in a customAccessDecisionManagerinstead.Unless an AccessDecisionVoteris specifically intended to vote on an access control decision due to a passed method invocation or configuration attribute parameter, it must returnACCESS_ABSTAIN. This prevents the coordinatingAccessDecisionManagerfrom counting votes from thoseAccessDecisionVoters without a legitimate interest in the access control decision.Whilst the secured object (such as a MethodInvocation) is passed as a parameter to maximise flexibility in making access control decisions, implementing classes should not modify it or cause the represented invocation to take place (for example, by callingMethodInvocation.proceed()).- Specified by:
- votein interface- AccessDecisionVoter<T>
- Parameters:
- authentication- the caller making the invocation
- message- the secured object being invoked
- attributes- the configuration attributes associated with the secured object
- Returns:
- either AccessDecisionVoter.ACCESS_GRANTED,AccessDecisionVoter.ACCESS_ABSTAINorAccessDecisionVoter.ACCESS_DENIED
 
- 
supportsDeprecated.Description copied from interface:AccessDecisionVoterIndicates whether thisAccessDecisionVoteris able to vote on the passedConfigAttribute.This allows the AbstractSecurityInterceptorto check every configuration attribute can be consumed by the configuredAccessDecisionManagerand/orRunAsManagerand/orAfterInvocationManager.- Specified by:
- supportsin interface- AccessDecisionVoter<T>
- Parameters:
- attribute- a configuration attribute that has been configured against the- AbstractSecurityInterceptor
- Returns:
- true if this AccessDecisionVotercan support the passed configuration attribute
 
- 
supportsDeprecated.Description copied from interface:AccessDecisionVoterIndicates whether theAccessDecisionVoterimplementation is able to provide access control votes for the indicated secured object type.- Specified by:
- supportsin interface- AccessDecisionVoter<T>
- Parameters:
- clazz- the class that is being queried
- Returns:
- true if the implementation can process the indicated class
 
- 
setExpressionHandlerpublic void setExpressionHandler(SecurityExpressionHandler<org.springframework.messaging.Message<T>> expressionHandler) Deprecated.
 
- 
MessageMatcherDelegatingAuthorizationManagerinstead