Как разрешить все ресурсы в статической папке весенней загрузки Maven, используя Spring Security? - PullRequest
0 голосов
/ 30 марта 2019

Я создаю приложение, использующее угловой для фронтэнда и весеннюю загрузку для бэкэнда.Я использую spring-boot-security в целях безопасности.

Spring boot предоставляет статический контент из папки src/main/resources/static.Я помещаю сюда все содержимое угловой папки dist, то есть все файлы js, css, html, созданные ng build.

Но после запуска приложения я продолжаю получать ошибку 401, неавторизованную.Вот мой configure() метод:

@Override
    protected void configure(HttpSecurity http) throws Exception {
        http.csrf().disable()
                .cors()
                .and()
                .exceptionHandling().authenticationEntryPoint(new HttpStatusEntryPoint(HttpStatus.UNAUTHORIZED))
                .and()
                .authorizeRequests()
                .requestMatchers(PathRequest.toStaticResources().atCommonLocations()).permitAll()
                .antMatchers("/api/v1/login/").permitAll()
                    .anyRequest().authenticated()
                .and()
                .addFilter(getJWTAuthenticationFilter(authenticationManager()))
                .addFilter(new JWTAuthorizationFilter(authenticationManager()));
    }

Если я добавлю .antMatchers("/**").permitAll(), тогда приложение будет корректно загружать все угловые ресурсы, но сделает защиту бесполезной, так как тогда будут открыты все конечные точки API.

Также я прочитал, что \css,\images,\js и т. Д. Разрешены по умолчанию, но здесь я просто ссылаюсь на статическую папку. Я также пытался переместить весь контент в новую конечную точку, скажем /app, реализовав метод addResourceHandlers(), нозатем мой угловой код ломается, так как он ссылается на все css, jss непосредственно в своем href, а не за каким-либо именем папки.

Я использую релиз весенней загрузки 2.1.1, и большинство ответов относятся к весенней загрузке v1,и я не могу найти Soln.

Я хочу настроить Spring Security, чтобы разрешить доступ только ко всем ресурсам в папке static.Это позволит мне использовать мой угловой код без изменения всех ссылок.Как мне этого добиться?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...