복붙노트

[SPRING] Spring RESTful 웹 서비스로 CSRF 보호를 처리하는 방법?

SPRING

Spring RESTful 웹 서비스로 CSRF 보호를 처리하는 방법?

CSRF 보호가 활성화 된 Spring 웹 애플리케이션이 있습니다. AJAX 호출을 통해 RESTful 서비스에 액세스 할 수 있지만 httpurlconnection과 같은 다른 애플리케이션으로 서비스에 액세스 할 때 401 오류 (CSRF 토큰 null)가 발생합니다.

RESTful 서비스에 액세스하려면 요청 헤더에 토큰을 전달해야하지만 CSRF 토큰을 얻으려면 어떻게해야합니까?

해결법

  1. ==============================

    1.CSRF 토큰을 얻는 Spring MVC에서 매핑을 생성 할 수있다 :

    CSRF 토큰을 얻는 Spring MVC에서 매핑을 생성 할 수있다 :

    @RequestMapping(value="/csrf-token", method=RequestMethod.GET)
    public @ResponseBody String getCsrfToken(HttpServletRequest request) {
        CsrfToken token = (CsrfToken)request.getAttribute(CsrfToken.class.getName());
        return token.getToken();
    }
    
  2. from https://stackoverflow.com/questions/33125598/how-to-handle-csrf-protection-with-spring-restful-web-services by cc-by-sa and MIT license