JWT를 프론트엔드에서 관리하는 방법

Rubi·2023년 8월 13일
1

localStorage

  • 웹 페이지를 닫거나 새로고침 해도 데이터가 지워지지 않음
    클라이언트 측에서 사용하는 키-값 저장소 임
  • javaScript로 데이터를 저장하거나 검색할 수 있음
  • 데이터가 영구적으로 저장되지만 사용자가 수동으로 브라우저 데이터를 지우지 않는 한 지워지지 않음
  • 보안에 취약, 중요한 정보나 개인정보를 저장하는 것은 좋지 않음
  • localStorage에 저장되는 모든 데이터는 문자열 형태로 저장됨
  • 객체나 배열을 저장하려면 JSON.stringify()로 변환
  • 검색할 때는 JSON.parse()로 다시 객체나 배열로 변환

HttpOnly Cookie

  • 웹 서버와 클라이언트 간에 정보를 주고 받기 위해 사용되는 작은 데이터 조각임
  • javaScript를 통해 엑세스 할 수 없음
    스크립트 기반 공격으로부터 쿠키를 보호하는 데 도음이 됨
  • HttpOnly 쿠키는 주로 백엔드에서 설정되며, 사용자 인증 같은 보안이 필요한 작업에 사용됨
    리액트에서 이 쿠키를 사용하려면 API 요청을 통해 백엔드와 통신해야함

In-Memory

  • 메모리 내 저장소(RAM)에 직접 저장함
    RAM은 컴퓨터가 켜져 있는 동안 정보를 임시로 저장하는 곳, 이것을 메인 메모리라 함
    컴퓨터를 끄면 RAM안에 저장된 모든 정보는 사라짐
    즉 컴퓨터를 켜는 동안만 정보를 기억하는 장소라고 볼 수 있음
  • 휘발성이므로 장기 저장용으로는 적합하지 않음, 빠른 데이터 엑세스나 임시 데이터 저장에는 이상적
profile
Front-end developer

0개의 댓글