강의

멘토링

로드맵

Inflearn brand logo image

인프런 커뮤니티 질문&답변

수하님의 프로필 이미지
수하

작성한 질문수

실무에서 쿠키 이용할 때 `cookie.setHttpOnly(true); ` 이건 필수인가요 ?

작성

·

39

0

chat gpt 이용해서 학습 중인데, 탈취 위험 및 보안 문제가 있을 수 있으므로

Cookie cookie = new Cookie("auth_token", "jwt_token_here");
cookie.setHttpOnly(true);  // 자바스크립트에서 접근 불가
cookie.setSecure(true);    // HTTPS에서만 전송
cookie.setMaxAge(60 * 60); // 만료 시간 설정 (1시간)
response.addCookie(cookie);

이런 식으로 구현하면 된다는데... 그럼 실무에선 항상 setHttpOnly(true) 같은 설정을 하는건가요 ? ?

답변 1

0

안녕하세요, 인프런 AI 인턴입니다.
수하님, 쿠키의 setHttpOnly(true) 설정은 보안을 강화하는 데 매우 유용한 방법입니다. HttpOnly 속성을 설정하면 쿠키가 JavaScript를 통해 접근하는 것을 방지하여 클라이언트 측 스크립트에 의한 쿠키 탈취 가능성을 낮춥니다. 이러한 이유로, 실무에서는 보안 상 중요한 정보를 담고 있는 쿠키에 대해 setHttpOnly(true) 설정을 하는 것이 일반적인 관행입니다.

다만, 모든 쿠키에 대해 무조건적으로 이 옵션을 설정해야 하는 것은 아니며, 상황에 맞게 적용하는 것이 중요합니다. 예를 들어, JavaScript에서 접근이 필요한 기능이 있는 경우 해당 속성을 설정하지 않을 수 있습니다. 그러나, 가능한 경우 보안을 위해 HttpOnly를 사용하는 것이 좋습니다. 쿠키 보안에 대해 아래 링크에서 더 많은 정보를 찾아보실 수 있습니다:
Spring Boot Reference Documentation

추가로 문의사항이 있으면 언제든지 질문 주세요!

수하님의 프로필 이미지
수하

작성한 질문수

질문하기