네트워크 통신

이준구·2024년 4월 8일
0

개발자 용어

목록 보기
1/1

1. 캐시와 캐싱이란

캐시: 동일한 데이터에 반복해서 접근해야 하거나 많은 연산이 필요한 일일때, 결과를 빠르게 이용하고자 임시 저장소이다.

캐싱: 웹페이지에 방문할 때마다 변하지 않는 정적 자산(static asset)을 캐시를 사용하여 데이터를 재사용하는 과정을 말한다.


2. 인증과 인가란

인증: 어떤 개체(사용자 또는 장치)의 신원을 확인하는 과정

인가: 어떤 개체가 어떤 리소스에 접근할 수 있는지 또는 어떤 동작을 수행할 수 있는지를 검증하는 것, 즉 접근 권한을 얻는 일


3. 웹 스토리지란

  • 클라이언트에 데이터를 저장할 수 있도록 HTML5부터 나온 새로운 방식의 데이터 저장소
  • 로컬 스토리지와 세션 스토리지가 존재
  • key와 value 쌍의 형태로 데이터 저장
  • window 객체의 프로퍼티로 존재

    장점:
  • 문자열 외에도 자바스크립트의 모든 원시형 데이터와 객체 저장 가능
  • 도메인 단위로 접근이 제한되는 CORS 특성 덕분에 CSRF로부터 안전

    단점:
  • HTML5를 지원하는 브라우저만 사용 가능
  • XSS로부터 위험 - local storage에 접근하는 Js 코드로 쉽게 접근 가능

    로컬 스토리지와 세션 스토리지 차이점:
  • 로컬 스토리지는 데이터 영구 저장이 가능
    • 로컬 스토리지 명령어: window.localStorage

  • 세션 스토리지는 브라우저 탭/윈도우가 닫히면 스토리지가 초기화
    • 세션 스토리지 명령어: window.sessionStorage

4. 쿠키란

HTTP 쿠키(웹 쿠키, 브라우저 쿠키)란, 서버가 사용자의 웹 브라우저에 전송하는 작은 데이터 조각이다. 브라우저는 이 데이터 조각들을 저장해 놓았다가, 동일한 서버에 재 요청 시 저장된 데이터를 함께 전송한다. 쿠키는 두 요청이 동일한 브라우저에 들어왔는지 아닌지를 판단할 때 주로 사용한다. 이를 이용하면 사용자의 로그인 상태를 유지할 수 있다. 위에서 설명한 바와 같이, 상태가 없는(stateless) HTTP 프로토콜에서 브라우저의 상태 정보를 기억할 수 있게 하는 방법이다.


요약: Cookie는 클라이언트에 저장되는 데이터 파일이므로, 서버 쪽, 보안에 위협이 되는 요소가 있어서는 안됩니다. 그러므로 보통 로그인 폼 자동 완성이나, 쇼핑몰에 담은 장바구니 기능 등에 사용

쿠키의 종류

  • Session Cookie: 메모리에만 저장되며, 만료시간이 있지만 브라우저 종료시 삭제되는 쿠키
  • Persistent Cookie: 파일로 저장되며, Max-Age 설정을 통해 장기간 유지 가능하고 브라우저 종료와 관계없이 사용 가능한 쿠키
  • Secure Cookie: HTTPS에서 사용되는 암호화된 쿠키. 비교적 안전하지만 실질적 보안이 제공되지 않아 민감한 데이터 저장 절대 금지
  • Third Party Cookie: 다른 도메인에 요청이 필요할 때 생성하는 쿠키. 주로 광고 목적으로 사용되며, 유저 개인정보 악용의 문제 발생
profile
개발 중~~~ 내 자신도 발전 중😂🤣

0개의 댓글

관련 채용 정보