Фильтр для Url Pattern без аутентификации? - PullRequest
0 голосов
/ 18 мая 2018

Помогите, пожалуйста, немного с настройкой Spring Security.Я нашел что-то похожее, но это как-то не очень хорошо работает для меня .. https://stackoverflow.com/a/36875726/1590594

Конфигурация указывает, что каждый запрос должен быть аутентифицирован.Необходимо сделать следующее, чтобы на указанном URL ("/ push") работал только один фильтр.Фильтр выполняет соответствующую проверку и пропускает запрос дальше или отклоняет запрос.Без аутентификации.

    @Override
protected void configure(HttpSecurity http) throws Exception {
    http.csrf().disable().
            sessionManagement().sessionCreationPolicy(SessionCreationPolicy.STATELESS)
            .and().
            authorizeRequests()
            .anyRequest().authenticated().
            and().
            anonymous().disable().
            exceptionHandling().authenticationEntryPoint(unauthorizedEntryPoint());
    http.addFilterBefore(new UserAuthenticationFilter(authenticationManager()), BasicAuthenticationFilter.class);
    http.authorizeRequests().antMatchers(HttpMethod.POST, "/push").authenticated().and().addFilterBefore(new RPushFilter(),BasicAuthenticationFilter.class);
}

и фильтра

    public class RPushFilter extends GenericFilterBean {
    @Override
    public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
        HttpServletRequest httpRequest = (HttpServletRequest) request;
        HttpServletResponse httpResponse = (HttpServletResponse) response;

        //IF NOT httpResponse.sendError(HttpStatus.BAD_REQUEST.value(), "Access denied");

        chain.doFilter(request, response);
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...