diff --git a/src/docbkx/supporting-infrastructure.xml b/src/docbkx/supporting-infrastructure.xml index 40a777db7b..0ba8fd4024 100644 --- a/src/docbkx/supporting-infrastructure.xml +++ b/src/docbkx/supporting-infrastructure.xml @@ -165,25 +165,11 @@ FilterSecurityInterceptor is declared. Both regular expressions and Ant Paths are supported, and the most specific URIs appear first. At runtime the FilterChainProxy will - locate the first URI pattern that matches the current web request. - Each of the corresponding configuration attributes represent the name - of a bean defined in the application context. The filters will then be - invoked in the order they are specified, with standard - FilterChain behaviour being respected (a - Filter can elect not to proceed with the chain if - it wishes to end processing). - - As you can see, FilterChainProxy requires the - duplication of filter names for different request patterns (in the - above example, exceptionTranslationFilter and - filterSecurityInterceptor are duplicated). This - design decision was made to enable FilterChainProxy - to specify different Filter invocation orders for - different URI patterns, and also to improve both the expressiveness - (in terms of regular expressions, Ant Paths, and any custom - FilterInvocationDefinitionSource implementations) - and clarity of which Filters should be - invoked. + locate the first URI pattern that matches the current web request and the list + of filter beans specified by the filters attribute + will be applied to that request. The filters will be invoked in the order + they are defined, so you have complete control over the filter chain + which is applied to a particular URL. You may have noticed we have declared two HttpSessionContextIntegrationFilters in the filter @@ -215,17 +201,11 @@ any servlet container lifecycle invocations are not delegated through to DelegatingFilterProxy. - In the same way that you can use the attribute filters = "none" - when using namespace configuration, - you can omit a URI pattern from the filter chain by using - the token #NONE# on the right-hand side of the - <URI Pattern> = <Filter Chain> - expression. For example, using the example above, if you wanted to - exclude the /webservices location completely, you - would modify the corresponding line in the bean declaration to be - -/webServices/**=#NONE# - Note that anything matching this path will then have + You can use the attribute filters = "none" + in the same way that you do when using namespace configuration + to build the FilterChainProxy. This will omit the + request pattern from the security filter chain entirely. + Note that anything matching this path will then have no authentication or authorization services applied and will be freely accessible.