본문 바로가기


study

쿠키(Cookie)와 세션(Session)

쿠키(Cookie)와 세션(Session) 개념 알아보기

 

 

웹기획 초보로써, 또 관련 전공자도 아니기 때문에.. 개발자들과 이야기 하다 보면 단어 하나하나가 낯설 때가 많습니다.

쿠키, 세션...대체 무엇이고 어떻게 다른건지 한번 알아봅시다.

 

1.쿠키(Cookie)란?

- 쿠키는 서버쪽에서 서버에 달라붙는 클라이언트 브라우저의 상태정보를 저장하는것을 말합니다.

 

- 클라이언트가 서버에 요청할 때마다 클라이언트 웹브라우저로부터 서버쪽에 전송하는 정보 패킷입니다.

 

- Cookie의 가장 큰 특징은 HTTP 프로토콜로, 클라이언트 브라우저의 상태정보(로그인, 아이디, 비밀번호, 사용자 정보 같은것들)를 클라이언트의 브라우저 특정 폴더에 파일로 저장하고 동일한 서버에 재 접근할때 필요한 클라이언트 정보를 참조하거나 재사용할 수 있다는 것입니다.

 

- 예를 들면, 방문했던 사이트에 다시 방문하였을 때 아이디, 비밀번호등을 자동 입력하게 하거나, 팝업에서 '오늘 이 창을 다시 보지 않음'을 체크하는 것과 같은 방식이 있습니다.

 

2. 세션(Session)이란?

- 세션(Session)이란, 클라이언트와 웹서버 간에 네트워크 연결이 지속적으로 유지되고 있는 상태를 이야기합니다.

(세션을 이용하기 위해서는 이런 상태가 유지되고 있어야 합니다. )

 

- 이용자가 브라우저를 이용하여 특정 서버(서비스)에 접속하면, 웹 컨테이너 엔진(JSP, ASP, PHP)은 이렇게 접속을 한 사용자의 브라우져 정보에 대해 임의로 ID를 부여하게 되는데, 이 ID를 세션이라고 합니다.

 

- 서버는 이렇게 접속한 사용자가 브라우저(클라이언트)의 세션ID를 가지고 페이지가 이동되거나, 재접속 하는 경우 클라이언트를 구분하는 유일한 수단으로 사용합니다. 그렇기 때문에 세션은 다음과 같은 특징을 가지고 있습니다.

 

①각각의 클라이언트(사용자가 접속한 브라우져)마다 고유의 ID를 부여합니다.

②세션 객체마다 저장해 둔 데이터를 이용하여 서로 다른 클라이언트의 요구에 맞게 서비스 제공이 가능합니다. 즉, 클라이언트 자신만의 고유한 페이지를 열어놓아서 생길 수 있는 보안상의 문제 해결이 용이합니다.

③접속한 사용자가 서버에 연결되어 있던 자신의 브라우져를 닫으면 세션정보는 휘발성 정보이기 때문에 RESET되고 접속정보와 사용자 정보는 없어집니다.

 

 

즉,

쿠키나 세션은 모두 웹브라우저와 웹서버 사이에 정보전달/저장을 목적으로 하지만

쿠키는 클라이언트 PC에 사용자의 고유 정보를 저장하는 것이며, 세션은 서버에 접속자가 접근하여 생성되므로 이 접속이 끊기면 클리어되는 것이라고 할 수 있습니다.

 

보안상의 차이점으로는, 쿠키는 사용자에 의하여 변질될 수 있는 정보이므로 보안상 취약점이 있고, 세션은 정보가 서버에 기록되기에 쿠키보다는 어느정도 안전하다고 합니다.

 

또한, 쿠키와 세션의 경우 타 도메인에서의 이용은 원칙적으로 불가능합니다.

동일 도메인 내에서 쿠키는 재이용이 가능하며, ASP와 JSP상에서 세션 공유는 불가능 합니다.

 

그리드형

'study' 카테고리의 다른 글

아이프레임(inline frame)이란?  (0) 2016.12.14
B2B,B2C,B2B2C  (0) 2016.10.29
O2O(online to offline) 서비스란?  (0) 2016.10.28