ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • HttpHeader Cookie(쿠키)
    Search: WebService WebService 2021. 10. 26. 18:13

    Http Header에 들어가는 값인 Cookie

     

    쿠키(Cookie)

    쇼핑몰의 장바구니 서비스 같이 클라이언트가 정보를 유지하는 Stateful한 성격의 서비스에 유용한 기능.
    기본적인 HTTP의 단점은 정보를 유지할 수 없는 Connectionless, Stateless의 성격을 가졌다. 이를 해결하기 위해 Cookie라는 개념이 도입되었다.

    웹 서버가 접속한 클라이언트 브라우저에게 지시하여 사용자의 로컬 컴퓨터에 파일 또는 메모리에 저장하는 작은 기록 정보 파일이다.

    Cookie와 Session(HTTP Session) 둘다 HTTP를 Stateful을 가능하게 만든 방법이다. 큰 차이는 상태정보를 어디에 저장하는 위치다. Cookie는 브라우저에 의해 클라이언트 측에 저장되고 Session은 서버 측에 저장된다.

     

     

    쿠키(Cookie) 단점

    Cookie에 대한 정보를 매 헤더(Http Header)에 추가하여 보내기 때문에 상당한 트랙픽을 발생시킨다.
    중요 정보를 Cookie에 저장했다가 유출되면 보안에 대한 문제점도 발생할 수 있다.

     

    쿠키(Cookie) 처리 흐름

    1. 최초 통신에서는 Client가 Server의 Cookie를 가지고 있지 않은 상태에서 request한다.
    2. Server는 request의 헤더에 Cookie가 포함되어 있지 않은 것을 확인 할 수 있다, Ex user id, password, 조작상태, 방문횟수 등의 정보에 의해 필요한 Cookie를 저장해서 response한다.
    3. Client의 브라우저는 받은 Cookie를 보존한다.
    4. Client는 두 번째 연결에서 HTTP헤더에 쿠키를 실어서 Server에 request한다.
    5. Server는 받은 Cookie로부터 Client를 구분하여 처리한다.

     

    쿠키(Cookie) 구성요소

    Name: 쿠키의 이름
    Value: 쿠키의 저장된 값
    Expires: 쿠키가 삭제되는 날자
    Domain: 쿠키가 사용되는 도메인
    Path: 쿠키를 반환할 경로를 결정
    Secure: 보안 연결 설정
    HttpOnly: Http외에 다른 통신 사용 가능 설정

     

    쿠키(Cookie) 종류

    Session Cookie: 보통 만료시간(Expire date) 설정하고 메모리에만 저장되며 브라우저 종료시 쿠키를 삭제.
    Persistent Cookie: 장기간 유지되는 쿠키(예를 들어 Max-Age 1년), 파일로 저장되어 브라우저 종료와 관계없이 사용.
    Secure Cookie: HTTPS에서만 사용, 쿠키 정보가 암호화 되어 전송.
    Third-Party Cookie: 방문한 도메인과 다른 도메인의 쿠키 보통 광고 베너 등을 관리할 때 유입 경로를 추적하기 위해 사용.

     

    참고: https://infos.tistory.com/2844

    'WebService' 카테고리의 다른 글

    Token(토큰)  (0) 2022.08.17
    HTTP Request Response structure  (0) 2022.08.10
    multipart form-data 와 boundary  (0) 2022.08.08
    Firebase을 사용한 제품  (0) 2022.05.02
    웹서버 개발  (0) 2021.06.26
    인터넷 온라인 쇼핑몰 구축 비용  (0) 2021.06.26
    Asp(Active Server Pages)  (0) 2021.06.26
    Blazor 블레이저  (0) 2021.06.26

    댓글