times
282
2020-09-25 15:38:34
0
89

spring 요청에 따라 jwt토큰을 확인하려합니다


SecurityConfig

@Override
    protected void configure(HttpSecurity http) throws Exception {
        http.cors()
                .and().csrf().disable()
                .exceptionHandling().authenticationEntryPoint(jwtAuthenticationEntryPoint).and()
                .sessionManagement().sessionCreationPolicy(SessionCreationPolicy.STATELESS)
                .and().authorizeRequests()
                    .antMatchers(HttpMethod.POST, "/api/signup").permitAll()
                    .antMatchers(HttpMethod.GET, "/user/me").hasRole("USER")
                    .antMatchers(HttpMethod.GET, "/user/admin").hasRole("ADMIN")
                    .anyRequest().permitAll()
                .and()
                    .addFilterBefore(new JwtAuthenticationFilter(jwtTokenProvider, cookieService, userService, redisService), UsernamePasswordAuthenticationFilter.class);
    }


JwtAuthenticationFilter에서 request에 있는 쿠키에서 jwt토큰을 가져와서 유효한지 확인을 하는 방식입니다. 웹 상에서는 로그인을 해야 post를 날릴 수 있어서 상관없는데 postman 같이 api테스트하는 툴로 날려도 post가 되는 것을 막고 싶은데 어떻게 해야될까요?


antMatchers에 post하는것을 hasRole로 막는 방법과, post, put, delete 요청이 들어오면 쿠키에서 jwt를 확인하는 필터를 만들어서 추가하는 방법을 생각했는데 좋고 효율적인 방법이 있으면 알고 싶습니다.

0
  • 답변 0

  • 로그인을 하시면 답변 을 등록할 수 있습니다.