title: WithMockUser not working when using access control on HttpSecurityConfig
body: <p>If you use the <code>hasAuthority</code> or <code>hasRole</code> functions you can use <code>@WithMockUser</code> in your tests. However if I use <code>access</code> there is no way to use <code>@WithMockUser</code> with the correct user object.</p>
  
  <pre><code>@Bean
  public HttpSecurityConfig securityConfiguration() {
      return http -&gt; {
          http.authorizeExchange()
              .pathMatchers(HttpMethod.GET, "/api/**")
              .access(&lt;ReactiveAuthorizationManager&gt;));
      };
  }
  </code></pre>
  
  <p>How can I write a test for a controller that is protected with the above <code>HttpSecurityConfig</code>? What I need is to create a fake <code>UserDetail</code> object that is used in the exchange (I think). I use Webflux.</p>
  
  <p>UPDATE:
  This is the manager i want to use:</p>
  
  <pre><code>public class ModuleActionAuthorization implements ReactiveAuthorizationManager&lt;AuthorizationContext&gt; {
  
    private final Module module;
    private final Action action;
    private final Brand brand;
  
    public ModuleActionAuthorization(Module module, Action action, Brand brand) {
      this.module = module;
      this.action = action;
      this.brand = brand;
    }
  
    public ModuleActionAuthorization(Module module, Action action) {
      this(module, action, null);
    }
  
    @Override
    public Mono&lt;AuthorizationDecision&gt; check(Mono&lt;Authentication&gt; authentication, AuthorizationContext ignored) {
      return authentication
          .map(a -&gt; {
            CustomUserDetails userDetails = (CustomUserDetails) a.getPrincipal();
            return new AuthorizationDecision(userDetails.hasAuthorityForAnyBrand(module, action));
          });
    }
  }
  </code></pre>