Describe the bug When server.forward-headers-strategy=framework is used in a WebFlux project that makes use of an IpAddressServerWebExchangeMatcher a NullPointerException is thrown when a Forwarded or X-Forwarded-For header is present because the remoteAddress created by ForwardedHeaderTransformer is unresolved.

To Reproduce 1. Create a sample WebFlux project and set server.forward-headers-strategy=framework 2. Define a SecurityWebFilterChain bean that calls an IpAddressServerWebExchangeMatcher 3. Submit a request with a Forwarded or X-Forwarded-For header

Expected behavior The IpAddressServerWebExchangeMatcher should execute as normal with no exception thrown.

Sample server.forward-headers-strategy=framework

    @Bean
    public SecurityWebFilterChain springSecurityFilterChain(ServerHttpSecurity httpSecurity) {
        return httpSecurity
                .authorizeExchange(auth -> auth
                        .pathMatchers("/**")
                            .access((authentication, authorizationContext) ->
                                new IpAddressServerWebExchangeMatcher("255.255.255.255")
                                        .matches(authorizationContext.getExchange())
                                        .map(matchResult -> new AuthorizationDecision(matchResult.isMatch()))))
                .build();
    }

Comment From: dsbecker

Submitted PR to fix this: https://github.com/spring-projects/spring-security/pull/11889

Comment From: jzheaux

Closed in 2b426872a32d9120d4834780ed2e1e9e7a6dde12