아이티-잉

공부하며 정리하는 IT블로그

Today   Total  
2023년! 복 많이 받으세요

네트워크 :: 쿠키와 세션의 개념

2016. 3. 29. 08:53

쿠키와 세션

 

 

인터넷 접근이 보다 용이해진 오늘날,

우리는 한 번쯤 자신이 알게모르게 쿠키를 가져봤고 세션도 유지했을 것이다.

 

오늘은 이 둘의 개념을 가볍게 살펴보자.

 

 

 

 


~ 광고 타임 ~


 

 

 

쿠키 Cookie

 

서버와 클라이언트 간 통신을 할 때,

서버가 클라이언트 측에 작은 이용 정보를 남겨두는 것을 말한다.

 

대표적으로 자동로그인 기능을 들 수 있다.

이는 로그인 정보를 클라이언트 측에 쿠키로 저장해둠으로써,

재방문시 해당 쿠키를 읽어 자동으로 로그인하게 된다.

 

바꿔말하면, 나의 정보가 컴퓨에 고스란히 남아있는 셈이 된다.

물론 최근에는 암호화가 되어있으나 그래도 여전히 쿠키파일은 악용될 우려가 있다.

 

 

 

웹에서 사용되는 실제 쿠키의 모습은 위와 같다.

쿠키의 위치는 다음과 같다.

 

C:\Users\Administrator\AppData\Roaming\Microsoft\Windows\Cookies

 

 

처음에는 쿠키 폴더가 아마 안 보일것이다.

 

 

그럴 땐 위와 같이 구성->폴더 및 검색 옵션에서 보기 탭->보호된 운영 체제 파일 숨기기 항목을 체크해제하면 된다.

 

쿠키파일은 모두 지워도 문제되지 않는다.

 

그리고 웹 브라우저에서 설정으로도 지우거나 차단하는 방법은 다음과 같다.

 

 

 

 

1) 인터넷 익스플로러 Internet Explorer

 

참고로 모든 이미지는 클릭하면 크게 확인할 수 있다.

 

 

도구->인터넷 옵션에서 위와 같이 쿠키 데이터를 웹 브라우저 종료시마다 자동삭제하거나,

삭제 항목을 통해 제거할 수도 있다.

 

 

 

 

 

개인 정보 탭에서는 설정을 보다 높여서 쿠키를 아예 차단할 수도 있다.

아래 설명하겠으나, 쿠키가 필요할 경우가 있으므로 이렇게까지 극단적으로 막을 필요는 없다.

 

 

 


~ 광고 타임 ~


 

 

 

2) 크롬 Chrome

 

 

옵션에서 설정 항목을 클릭하거나 주소창에 chrome://settings/를 입력하면

하단에 '고급 설정 표시'항목이 있다. 누르자.

 

 

 

 

 

 

그리고 개인정보 항목에 콘텐츠 설정 메뉴를 선택하면 팝업이 나타난다.

위와 같이 허용과 차단 설정을 할 수 있고, 컴퓨터에 저장된 모든 쿠키를 파란색 네모로 표시해둔 항목에서 볼 수 있다.

 

 

 

 

위와 같이 열람할 수 있고, 해당 url도 확인할 수 있다.

때문에 필요한 것만 골라 지울 수도 있으며 모두삭제를 클릭하여 모두 지울 수도 있다.

 

 

 

 

또는 위와 같이 인터넷 사용정보 삭제를 통해 쿠키를 삭제할 수도 있다.

 

 

 

 

 

 

 

세션 Session

 

 

영어에서 세션은 본래 기간, 시간과 같은 의미가 있다.

이러한 세션이 갖는 이미지로 인해 다양하게 사용되곤 한다.

 

음악이나 밴드에서는 곡이 진행되는 동안에 악기 등이 연주되어

일정 시간 묶여있으므로 세션이라는 의미가 사용된다.

 

마찬가지로 컴퓨터 프로그램에서는 프로그램의 시작과 끝까지의 시간을 의미하기도 하고,

네트워크에서는 서버와 클라이언트 간 통신이 연결되어 있는 시간을 의미한다.

 

 

 

가장 대표적인 프로토콜 HTTP에서는 이용자와의 연결을 유지하는 기능이 존재하지 않는다.

때문에 우리가 장바구니에 물건을 담아서 계속 쇼핑하고 마지막에 계산할 수 있는 이유가 바로 세션에 있다.

 

세션이 유지되지 않을 경우, 페이지를 로드할 때마다 우리는 처음 만난 사람이 되는 셈이다.

 

일반적으로 세션ID를 서버가 클라이언트 측에 쿠키로 주고,

새로운 페이지가 요청될 때마다 해당 쿠키를 읽고 연결을 유지하게 된다.

 

일반적으로는 페이지를 이탈할 때,

또는 트래픽과 보안상의 이유로 일정 시간이 지나도 요청이 없을 때 세션을 끊는다.

 

즉, 서버측이 설정해둔 시간이 지날 경우 연결이 자동으로 끊어져 세션 만료가 일어난다.

 

 

 

 


~ 광고 타임 ~


 

 

 

 

마치며

 

사실 핵심내용은 별로 없으나, 살을 붙였더니 횡설수설 된 것 같다.

그래도 어려운 개념은 아니므로 이해하는데 무리는 없었을 것이라 생각한다.

 

언제가 될 지 모르겠으나, 시간 나는대로 환경을 구축한 후

차후 쿠키와 세션을 이용한 간단한 웹 프로그래밍을 다뤄보겠다.

 

 

끝.