public class

ChannelDecisionManagerImpl

extends Object
implements InitializingBean ChannelDecisionManager
java.lang.Object
   ↳ org.springframework.security.web.access.channel.ChannelDecisionManagerImpl

Class Overview

Implementation of ChannelDecisionManager.

Iterates through each configured ChannelProcessor. If a ChannelProcessor has any issue with the security of the request, it should cause a redirect, exception or whatever other action is appropriate for the ChannelProcessor implementation.

Once any response is committed (ie a redirect is written to the response object), the ChannelDecisionManagerImpl will not iterate through any further ChannelProcessors.

The attribute "ANY_CHANNEL" if applied to a particular URL, the iteration through the channel processors will be skipped (see SEC-494, SEC-335).

Summary

Constants
String ANY_CHANNEL
Public Constructors
ChannelDecisionManagerImpl()
Public Methods
void afterPropertiesSet()
void decide(FilterInvocation invocation, Collection<ConfigAttribute> config)
Decided whether the presented FilterInvocation provides the appropriate level of channel security based on the requested list of ConfigAttributes.
void setChannelProcessors(List<?> newList)
boolean supports(ConfigAttribute attribute)
Indicates whether this ChannelDecisionManager is able to process the passed ConfigAttribute.
Protected Methods
List<ChannelProcessor> getChannelProcessors()
[Expand]
Inherited Methods
From class java.lang.Object
From interface org.springframework.beans.factory.InitializingBean
From interface org.springframework.security.web.access.channel.ChannelDecisionManager

Constants

public static final String ANY_CHANNEL

Constant Value: "ANY_CHANNEL"

Public Constructors

public ChannelDecisionManagerImpl ()

Public Methods

public void afterPropertiesSet ()

Throws
Exception

public void decide (FilterInvocation invocation, Collection<ConfigAttribute> config)

Decided whether the presented FilterInvocation provides the appropriate level of channel security based on the requested list of ConfigAttributes.

Throws
IOException
ServletException

public void setChannelProcessors (List<?> newList)

public boolean supports (ConfigAttribute attribute)

Indicates whether this ChannelDecisionManager is able to process the passed ConfigAttribute.

This allows the ChannelProcessingFilter to check every configuration attribute can be consumed by the configured ChannelDecisionManager.

Parameters
attribute a configuration attribute that has been configured against the ChannelProcessingFilter
Returns
  • true if this ChannelDecisionManager can support the passed configuration attribute

Protected Methods

protected List<ChannelProcessor> getChannelProcessors ()