SlideShare a Scribd company logo
1 of 8
Download to read offline
11장 클라이언트 식별과 쿠키
HTTP 헤더
클라이언트 식별
http는 익명으로 사용하며 상태가 없고 요청과 응답으로 통신하는 포로토콜이다.
서버에서 클라이언트를 식별하는 방법이 필요하다.
• 사용자 식별 관련 정보를 전달하는 HTTP 헤더들
• 클라이언트 IP 주소 추적으로 알아낸 IP 주소로 사용자를 식별
• 사용자 로그인 인증을 통한 사용자 식별
• URL에 식별자를 포함하는 기술인 뚱뚱한 URL
• 식별 정보를 지속해서 유지하는 강력하면서도 효율적인 기술인 쿠키
HTTP 헤더
User-Agent 요청 사용자의 브라우저
Referer 요청 사용자가 현재 링크를 타고 온 근원 페이지
Authorization 요청 사용자 이름과 비밀번호
Client-IP 확장(요청) 클라이언트의 IP 주소
X-Forwarded-For 확장(요청) 클라이언트의 IP 주소
Cookie 확장(요청) 서버가 생성한 ID 라벨
From 요청 사용자의 이메일 주소
"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_1) AppleWebKit/
537.36 (KHTML, like Gecko) Chrome/76.0.3809.132 Safari/537.36"
클라이언트 IP 주소
• IP 주소는 사용자보다는 컴퓨터를 가리킨다.
• ISP가 사용자의 IP를 동적으로 변경할 수 있다.
• NAT(Network Address Translation) 방화벽을 통해 사용하면 실제 IP주소를 알 수 없다.
• HTTP 프락시와 게이트웨이가 껴있을 경우 서버는 클라이언트의 IP 대신 프락시의 IP를 본다. (확
장 헤더를 통해 해결은 가능하다)
초기에는 IP를 개인 식별에 사용하려고 했지만, IP 고갈 문제에 맞물려 하나의 IP를 여러 사용자가
사용할 수 있어서 식별하기에는 맞지 않다.
사용자 로그인
뚱뚱한 URL
URL에 사용자 정보를 포함하는 방식.
어떤 웹사이트는 URL에 개인 식별 값을 포함하는 경우가 있었는데, 더이상 이런 방법을 고려하지 않는다.
단점으로는 너무 긴 URL, 공유하지 못하는 URL, 캐시 사용 불가, 서버 부하 가중
쿠키
쿠키는 사용자를 식별하고 세션을 유지하는 방식 중 가장 널리 사용하는 방식이다.
세션 쿠키: 브라우저 창이 닫히면 사라짐
지속 쿠키: 컴퓨터가 재시작 하더라도 남아 있다.
Set-Cookie: name=value [; expires=date] [; path=path] [; domain=domain] [;
secure] Cookie: name1=value1 [; name2=value2] ...
쿠키
TMI
크롬의 경우 SQLite로 쿠키를 관리하고, IE의 경우는 디렉토리에서 파일로 관리한다.
지금 사용하고 있는 쿠키는 넷스케이프가 개발하였고, Version 0을 사용하고 있다.
Version 1 쿠키도 있었지만 지금은 폐기 됐다.

More Related Content

Similar to Cookie http

HeadFisrt Servlet&JSP Chapter 1
HeadFisrt Servlet&JSP Chapter 1HeadFisrt Servlet&JSP Chapter 1
HeadFisrt Servlet&JSP Chapter 1J B
 
Servlet&jsp 1장
Servlet&jsp 1장Servlet&jsp 1장
Servlet&jsp 1장JeongBong Kim
 
HTTP 완벽가이드 21장
HTTP 완벽가이드 21장HTTP 완벽가이드 21장
HTTP 완벽가이드 21장HyeonSeok Choi
 
Web hacking introduction
Web hacking introductionWeb hacking introduction
Web hacking introductionJinkyoung Kim
 
한국청소년정보과학회 1회 세미나 - RestFul API Basic
한국청소년정보과학회 1회 세미나 - RestFul API Basic한국청소년정보과학회 1회 세미나 - RestFul API Basic
한국청소년정보과학회 1회 세미나 - RestFul API Basic한국청소년정보과학회
 
Http에 대해서
Http에 대해서Http에 대해서
Http에 대해서suhalee
 
NDC 2018 디지털 신원 확인 101
NDC 2018 디지털 신원 확인 101NDC 2018 디지털 신원 확인 101
NDC 2018 디지털 신원 확인 101tcaesvk
 
[2017 Incognito] Hack the AIR;카페에서 ARP 스푸핑을 통한 세션 탈취
[2017 Incognito] Hack the AIR;카페에서 ARP 스푸핑을 통한 세션 탈취[2017 Incognito] Hack the AIR;카페에서 ARP 스푸핑을 통한 세션 탈취
[2017 Incognito] Hack the AIR;카페에서 ARP 스푸핑을 통한 세션 탈취NAVER D2
 
Flask, Redis, Retrofit을 이용한 Android 로그인 서비스 구현하기
Flask, Redis, Retrofit을 이용한 Android 로그인 서비스 구현하기Flask, Redis, Retrofit을 이용한 Android 로그인 서비스 구현하기
Flask, Redis, Retrofit을 이용한 Android 로그인 서비스 구현하기Manjong Han
 
Http 헤더
Http 헤더Http 헤더
Http 헤더kidoki
 
Http2(http2.0,g rpc,cookie,session,idempotent, x forwarded-for)
Http2(http2.0,g rpc,cookie,session,idempotent, x forwarded-for)Http2(http2.0,g rpc,cookie,session,idempotent, x forwarded-for)
Http2(http2.0,g rpc,cookie,session,idempotent, x forwarded-for)진태 이
 
HTTP와 HTTPS의 차이 그리고 SSL에 대한 설명
HTTP와 HTTPS의 차이 그리고 SSL에 대한 설명HTTP와 HTTPS의 차이 그리고 SSL에 대한 설명
HTTP와 HTTPS의 차이 그리고 SSL에 대한 설명Seongho Lee
 
[HTTP 101] 웹 개발자라면 반드시 알아야하는 HTTP의 기초
[HTTP 101] 웹 개발자라면 반드시 알아야하는 HTTP의 기초[HTTP 101] 웹 개발자라면 반드시 알아야하는 HTTP의 기초
[HTTP 101] 웹 개발자라면 반드시 알아야하는 HTTP의 기초JinuNoh
 
HTTP Cookie vs Session
HTTP Cookie vs SessionHTTP Cookie vs Session
HTTP Cookie vs Sessionssuser889640
 
서버성능개선 류우림
서버성능개선 류우림서버성능개선 류우림
서버성능개선 류우림우림 류
 
Http 완벽가이드(3장 http 메시지)
Http 완벽가이드(3장 http 메시지)Http 완벽가이드(3장 http 메시지)
Http 완벽가이드(3장 http 메시지)Choonghyun Yang
 
웹프로그래밍 트랙소개
웹프로그래밍 트랙소개웹프로그래밍 트랙소개
웹프로그래밍 트랙소개지수 윤
 

Similar to Cookie http (20)

3장
3장3장
3장
 
HeadFisrt Servlet&JSP Chapter 1
HeadFisrt Servlet&JSP Chapter 1HeadFisrt Servlet&JSP Chapter 1
HeadFisrt Servlet&JSP Chapter 1
 
Servlet&jsp 1장
Servlet&jsp 1장Servlet&jsp 1장
Servlet&jsp 1장
 
HTTP 완벽가이드 21장
HTTP 완벽가이드 21장HTTP 완벽가이드 21장
HTTP 완벽가이드 21장
 
Web hacking introduction
Web hacking introductionWeb hacking introduction
Web hacking introduction
 
한국청소년정보과학회 1회 세미나 - RestFul API Basic
한국청소년정보과학회 1회 세미나 - RestFul API Basic한국청소년정보과학회 1회 세미나 - RestFul API Basic
한국청소년정보과학회 1회 세미나 - RestFul API Basic
 
Http에 대해서
Http에 대해서Http에 대해서
Http에 대해서
 
NDC 2018 디지털 신원 확인 101
NDC 2018 디지털 신원 확인 101NDC 2018 디지털 신원 확인 101
NDC 2018 디지털 신원 확인 101
 
게이트단의 보안
게이트단의 보안게이트단의 보안
게이트단의 보안
 
[2017 Incognito] Hack the AIR;카페에서 ARP 스푸핑을 통한 세션 탈취
[2017 Incognito] Hack the AIR;카페에서 ARP 스푸핑을 통한 세션 탈취[2017 Incognito] Hack the AIR;카페에서 ARP 스푸핑을 통한 세션 탈취
[2017 Incognito] Hack the AIR;카페에서 ARP 스푸핑을 통한 세션 탈취
 
Flask, Redis, Retrofit을 이용한 Android 로그인 서비스 구현하기
Flask, Redis, Retrofit을 이용한 Android 로그인 서비스 구현하기Flask, Redis, Retrofit을 이용한 Android 로그인 서비스 구현하기
Flask, Redis, Retrofit을 이용한 Android 로그인 서비스 구현하기
 
Restful API guide
Restful API guideRestful API guide
Restful API guide
 
Http 헤더
Http 헤더Http 헤더
Http 헤더
 
Http2(http2.0,g rpc,cookie,session,idempotent, x forwarded-for)
Http2(http2.0,g rpc,cookie,session,idempotent, x forwarded-for)Http2(http2.0,g rpc,cookie,session,idempotent, x forwarded-for)
Http2(http2.0,g rpc,cookie,session,idempotent, x forwarded-for)
 
HTTP와 HTTPS의 차이 그리고 SSL에 대한 설명
HTTP와 HTTPS의 차이 그리고 SSL에 대한 설명HTTP와 HTTPS의 차이 그리고 SSL에 대한 설명
HTTP와 HTTPS의 차이 그리고 SSL에 대한 설명
 
[HTTP 101] 웹 개발자라면 반드시 알아야하는 HTTP의 기초
[HTTP 101] 웹 개발자라면 반드시 알아야하는 HTTP의 기초[HTTP 101] 웹 개발자라면 반드시 알아야하는 HTTP의 기초
[HTTP 101] 웹 개발자라면 반드시 알아야하는 HTTP의 기초
 
HTTP Cookie vs Session
HTTP Cookie vs SessionHTTP Cookie vs Session
HTTP Cookie vs Session
 
서버성능개선 류우림
서버성능개선 류우림서버성능개선 류우림
서버성능개선 류우림
 
Http 완벽가이드(3장 http 메시지)
Http 완벽가이드(3장 http 메시지)Http 완벽가이드(3장 http 메시지)
Http 완벽가이드(3장 http 메시지)
 
웹프로그래밍 트랙소개
웹프로그래밍 트랙소개웹프로그래밍 트랙소개
웹프로그래밍 트랙소개
 

More from TaeMin Walter Moon (6)

Auth
AuthAuth
Auth
 
Deploy
DeployDeploy
Deploy
 
Virtual hosting
Virtual hostingVirtual hosting
Virtual hosting
 
Content negotiation
Content negotiationContent negotiation
Content negotiation
 
Encoding
EncodingEncoding
Encoding
 
Http redirection
Http redirectionHttp redirection
Http redirection
 

Cookie http

  • 1. 11장 클라이언트 식별과 쿠키 HTTP 헤더
  • 2. 클라이언트 식별 http는 익명으로 사용하며 상태가 없고 요청과 응답으로 통신하는 포로토콜이다. 서버에서 클라이언트를 식별하는 방법이 필요하다. • 사용자 식별 관련 정보를 전달하는 HTTP 헤더들 • 클라이언트 IP 주소 추적으로 알아낸 IP 주소로 사용자를 식별 • 사용자 로그인 인증을 통한 사용자 식별 • URL에 식별자를 포함하는 기술인 뚱뚱한 URL • 식별 정보를 지속해서 유지하는 강력하면서도 효율적인 기술인 쿠키
  • 3. HTTP 헤더 User-Agent 요청 사용자의 브라우저 Referer 요청 사용자가 현재 링크를 타고 온 근원 페이지 Authorization 요청 사용자 이름과 비밀번호 Client-IP 확장(요청) 클라이언트의 IP 주소 X-Forwarded-For 확장(요청) 클라이언트의 IP 주소 Cookie 확장(요청) 서버가 생성한 ID 라벨 From 요청 사용자의 이메일 주소 "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_1) AppleWebKit/ 537.36 (KHTML, like Gecko) Chrome/76.0.3809.132 Safari/537.36"
  • 4. 클라이언트 IP 주소 • IP 주소는 사용자보다는 컴퓨터를 가리킨다. • ISP가 사용자의 IP를 동적으로 변경할 수 있다. • NAT(Network Address Translation) 방화벽을 통해 사용하면 실제 IP주소를 알 수 없다. • HTTP 프락시와 게이트웨이가 껴있을 경우 서버는 클라이언트의 IP 대신 프락시의 IP를 본다. (확 장 헤더를 통해 해결은 가능하다) 초기에는 IP를 개인 식별에 사용하려고 했지만, IP 고갈 문제에 맞물려 하나의 IP를 여러 사용자가 사용할 수 있어서 식별하기에는 맞지 않다.
  • 6. 뚱뚱한 URL URL에 사용자 정보를 포함하는 방식. 어떤 웹사이트는 URL에 개인 식별 값을 포함하는 경우가 있었는데, 더이상 이런 방법을 고려하지 않는다. 단점으로는 너무 긴 URL, 공유하지 못하는 URL, 캐시 사용 불가, 서버 부하 가중
  • 7. 쿠키 쿠키는 사용자를 식별하고 세션을 유지하는 방식 중 가장 널리 사용하는 방식이다. 세션 쿠키: 브라우저 창이 닫히면 사라짐 지속 쿠키: 컴퓨터가 재시작 하더라도 남아 있다. Set-Cookie: name=value [; expires=date] [; path=path] [; domain=domain] [; secure] Cookie: name1=value1 [; name2=value2] ...
  • 8. 쿠키 TMI 크롬의 경우 SQLite로 쿠키를 관리하고, IE의 경우는 디렉토리에서 파일로 관리한다. 지금 사용하고 있는 쿠키는 넷스케이프가 개발하였고, Version 0을 사용하고 있다. Version 1 쿠키도 있었지만 지금은 폐기 됐다.