Class AuthenticatedVoter
- All Implemented Interfaces:
AccessDecisionVoter<Object>
ConfigAttribute.getAttribute() of
IS_AUTHENTICATED_FULLY or IS_AUTHENTICATED_REMEMBERED or
IS_AUTHENTICATED_ANONYMOUSLY is present. This list is in order of most
strict checking to least strict checking.
The current Authentication will be inspected to determine if the principal
has a particular level of authentication. The "FULLY" authenticated option means the
user is authenticated fully (i.e.
AuthenticationTrustResolver.isAnonymous(Authentication)
is false and
AuthenticationTrustResolver.isRememberMe(Authentication)
is false). The "REMEMBERED" will grant access if the principal was either authenticated
via remember-me OR is fully authenticated. The "ANONYMOUSLY" will grant access if the
principal was authenticated via remember-me, OR anonymously, OR via full
authentication.
All comparisons and prefixes are case sensitive.
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final StringDeprecated.static final StringDeprecated.static final StringDeprecated.Fields inherited from interface org.springframework.security.access.AccessDecisionVoter
ACCESS_ABSTAIN, ACCESS_DENIED, ACCESS_GRANTED -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidsetAuthenticationTrustResolver(org.springframework.security.authentication.AuthenticationTrustResolver authenticationTrustResolver) Deprecated.booleanDeprecated.This implementation supports any type of class, because it does not query the presented secure object.booleansupports(ConfigAttribute attribute) Deprecated.Indicates whether thisAccessDecisionVoteris able to vote on the passedConfigAttribute.intvote(org.springframework.security.core.Authentication authentication, Object object, Collection<ConfigAttribute> attributes) Deprecated.Indicates whether or not access is granted.
-
Field Details
-
IS_AUTHENTICATED_FULLY
Deprecated.- See Also:
-
IS_AUTHENTICATED_REMEMBERED
Deprecated.- See Also:
-
IS_AUTHENTICATED_ANONYMOUSLY
Deprecated.- See Also:
-
-
Constructor Details
-
AuthenticatedVoter
public AuthenticatedVoter()Deprecated.
-
-
Method Details
-
setAuthenticationTrustResolver
public void setAuthenticationTrustResolver(org.springframework.security.authentication.AuthenticationTrustResolver authenticationTrustResolver) Deprecated. -
supports
Deprecated.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 interfaceAccessDecisionVoter<Object>- Parameters:
attribute- a configuration attribute that has been configured against theAbstractSecurityInterceptor- Returns:
- true if this
AccessDecisionVotercan support the passed configuration attribute
-
supports
Deprecated.This implementation supports any type of class, because it does not query the presented secure object.- Specified by:
supportsin interfaceAccessDecisionVoter<Object>- Parameters:
clazz- the secure object type- Returns:
- always
true
-
vote
public int vote(org.springframework.security.core.Authentication authentication, Object object, 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 interfaceAccessDecisionVoter<Object>- Parameters:
authentication- the caller making the invocationobject- the secured object being invokedattributes- the configuration attributes associated with the secured object- Returns:
- either
AccessDecisionVoter.ACCESS_GRANTED,AccessDecisionVoter.ACCESS_ABSTAINorAccessDecisionVoter.ACCESS_DENIED
-
AuthorityAuthorizationManagerinstead