쿠키, 웹 스토리지 생성 배경
HTTP는 요청과 응답으로 이루어지는 하나의 사이클이 끝나면 연결이 끊어지는
무상태성
의 띄어서 클라이언트의
상태를 보존하지 않는다.
클라이언트의 상태를 서버가 아닌 클라이언트에 저장해두고 필요시마다 데이터를 꺼내서 서버에 전달하는 방식으로 HTTP의 단점을 보완하고자 쿠키와 웹 스토리지를 사용한다.
쿠키
만료 기간이 있는 클라이언트 단에 전장하는 작은 텍스트 파일
종류
Session Cookie: 메모리에만 저장되며, 만료시간이 있지만
브라우저 종료시 삭제
됨.
Persistent Cookie:
파일
로 저장되며, Max-Age 설정을 통해 장기간 유지 가능하고 브라우저
종료와 관계없이
사용 가능한 쿠키
Secure Cookie: HTTPS에서 사용되는
암호화
된 쿠키. 비교적 안전하지만 실질적
보안이 제공되지 않아
민감한 데이터 저장 금지
Third Party Cookie: 다른 도메인에 요청이 필요할 때 생성하는 쿠키. 주로 광고 목적
장점
대부분의 브라우저가 지원
데이터 유효기간 기정 가능
XSS로부터 안전 - 서버에서 쿠키의 httpOnly 옵션을 설정하면, Js에서 쿠키에 접근 자체가 불가능