HTTP 프로토콜에서 쿠키는 클라이언트에 정보를 저장하고 후속 요청 시 이 정보를 다시 서버로 보내기 위해 서버에서 클라이언트로 보내는 작은 데이터 조각입니다. 각 쿠키에는 동작을 제어하고 사용에 영향을 미치는 속성이 있습니다. 다음은 쿠키의 일반적인 속성입니다.
이름: 클라이언트와 서버 간에 데이터를 전송하는 데 사용되는 쿠키의 식별자입니다.
값: 쿠키와 관련된 값으로 임의의 문자열일 수 있습니다.
도메인: 쿠키에 접근할 수 있는 도메인 이름을 지정합니다. 설정하지 않으면 기본적으로 쿠키를 생성한 페이지의 도메인 이름이 사용됩니다.
경로: 쿠키에 접근할 수 있는 경로를 지정합니다. 설정하지 않으면 기본적으로 쿠키를 생성한 웹페이지의 경로가 사용됩니다.
Expires: 쿠키가 자동으로 삭제되는 시점인 쿠키의 만료 시간을 지정합니다. 설정하지 않으면 사용자가 브라우저를 닫을 때 쿠키가 삭제됩니다.
보안 플래그(Secure): 이 플래그가 설정되면 쿠키는 암호화된 프로토콜(예: HTTPS)을 통해서만 전송될 수 있음을 의미합니다.
HttpOnly 플래그(HttpOnly): 이 플래그가 설정되면 쿠키는 HTTP 프로토콜을 통해서만 전송될 수 있으며 JavaScript와 같은 스크립트 언어를 통해서는 액세스할 수 없습니다. 이는 XSS(교차 사이트 스크립팅) 공격을 방지하는 데 도움이 됩니다.
위 속성 외에도 SameSite(쿠키를 생성한 웹 사이트와 동일한 출처를 가진 웹 사이트에만 쿠키를 보낼지 여부 지정) 등과 같은 몇 가지 다른 쿠키 속성이 있습니다.
쿠키 속성의 지원 수준은 브라우저마다 다르며, 브라우저 버전에 따라 지원되는 속성도 다를 수 있다는 점에 유의하세요. 웹 애플리케이션을 작성할 때 이러한 호환성 문제를 고려해야 하며 가능하면 더 이상 사용되지 않거나 지원되지 않는 속성을 사용하지 않아야 합니다.