본문 바로가기
개발 관련 강의 정리/10분 테코톡

[10분 테코톡] 연로그의 쿠키 vs 세션 vs 토큰 vs 캐시 정리

by 코딩개발 2023. 5. 13.
728x90
반응형

쿠키

- 사용자가 사이트에 방문하면 데이터를 저장하는 게 쿠키의 중요한 포인트

- 데이터를 직접 수정 가능

- 수정 불가능한 중요한 정보는 쿠키에 저장하기 부적절

 

세션

- 서버가 관리하여 사용자가 직접 데이터 수정X

- 서버는 세션ID라는 기간이 짧은 임시 키를 하나 발급

- 사용자는 이 임시 키를 갖고 있다가 서버로 요청할 일이 생기면 이 세션ID를 함께 보내줌
- 이 세션ID를 보고 서버가 사용자를 식별함

 

토큰

- 서버에서 유저에게 토큰을 줌

- 서버는 서버만 알고 있는 비밀 키(Secret Key)를 가지고 있음
- 사용자의 정보를 이 비밀 키를 통해서 랜덤한 문자열 같은 토큰을 발급할 수 있음
- 토큰을 사용자가 갖고 있다가 서버에게 전달 하면 또다시 비밀 키를 이용해서 토큰을 읽어 들임
- 토큰에 있는 데이터를 판별해서 사용자를 식별함

 

토큰의 한계점
- 한 아이디로 여러 사용자가 접근할 때, 토큰이 유효하기만 하다면 사용자가 같은 아이디로 들어오든 말든 서버는 항상 입장 허용함
- 세션에서 관리한다면 이미 접속한 적 있는 아이디로 다시 접속하는 경우 막는다든가 이런 식으로 서버가 컨트롤할 수 있음

- 상황과 서비스에 맞게 적절하게 선택해야 함

 

캐시(Cache)
- 가져오는데 비용이 드는 데이터를 임시로 저장했다가 필요할 때 꺼내서 쓸 수 있게 해주는 것

 

기억해두면 좋은 특징
- 쿠키 : 사용자에 의해 조작되어도 크게 문제되지 않을 정보를 브라우저에 저장
- 세션 : 인증에 대한 정보를 서버가 저장

- 토큰 : 인증에 대한 정보를 사용자가 저장
- 캐싱 : 한 번 전송 받은 데이터를 저장해놨다가 필요할 때 꺼내 쓰기 가능


참고

https://www.youtube.com/watch?v=gA1KsJ2ak10&ab_channel=%EC%9A%B0%EC%95%84%ED%95%9C%ED%85%8C%ED%81%AC 

728x90
반응형

댓글