네트워크

쿠키와 세션

린예라 2024. 4. 22. 23:49

쿠키와 세션은 사용자의 상태를 유지하고 관리하는데 사용하는 메커니즘이다. 무슨말일까? 웹의 환경에대해 알아볼 필요가 있다.

 

일반적인 인식

하지만 실제로는 개별의 다른 페이지들일 뿐이다.

 

이게 무슨 말이냐면, 로그인페이지에서 로그인을 했다고 한다면, 이 로그인 정보나 사용자의 상태 같은 정보등이 다른 페이지에 자동적으로 넘어가지는 않는 다는 말이다.

 

물론 로그인페이지에서 홈페이지로 로그인했다는 정보를 보낼 수는 있다. 

 

하지만 HTML간의 통신은 보안적으로 취약하기 때문에, 사용자의 개인정보나 결제정보등의 민감한 정보 등이 매우 쉽게 노출 될 수 있다.

 

그렇다면 내가 로그인한 정보(로그인여부, 장바구니 내용물, 캐시 잔여 금액 등등)를  어떻게 안전하게 다른 HTML페이지와 공유할 수 있을까?

 

그렇게 나온것이 바로 쿠키와 세션이다.

 

쿠키는 클라이언트(홈페이지 접속하는 사람들) 측의 pc나 휴대폰에 데이터를 저장 할 수 있는 작은 공간 같은 것이다.

여기에 사용자의 로그인 상태나, 정보등을 저장하여 사용자가 서버에 어떤 일을 해달라고(물건을 산다거나) 할 때 서버측에 제출하고, 서버는 이를 검사하고 일을 처리해준다.

 

세션이란 웹브라우저와 웹 서버 사이에서 유지되는 상태정보를 나타낸다. 서버에서 인증된 사용자에게 고유한 세션ID를 할당해 주고, 이를 통해 사용자를 처리하고 일을 처리해준다.

세션 ID는 일반적으로 쿠키에 저장되며 클라이언트의 브라우저를 닫거나 로그아웃 할 때 세션이 종료된다.