• 회원가입
  • 로그인
  • 구글아이디로 로그인

[web] (세션/쿠키/스토리지/테이블) 방식 장단점

1,542  

(세션/쿠키/스토리지/테이블) 방식 장단점

[질문]

그누보드5 (테마/게시판스킨)을 사용자가 ajax 이용해 선택 가능 시, (세션변수 생성 / 쿠키변수 생성 /스토리지에 저장 / 테이블에 저장) 4가지 방식 중 어떤 방식이 가장 좋나요?

 


[답변]

상황에 따라 다르며, 각 방식의 장단점 고려하여 적절한 방식을 선택 권장.


1. 세션변수 생성 방식 

서버 측에서 세션 객체 생성해 해당 세션에 정보 저장함. 사용자의 브라우저에서 세션 ID를 쿠키로 전송하여 세션 객체를 식별함.

  • 장점: 서버 측에서 관리하기 때문에 보안이 우수함. (브라우저 종료 시 세션도 함께 종료되기 때문에 보안에 더욱 강함.)
  • 단점: 서버 메모리 사용하므로 서버 부하 발생 가능.


2. 쿠키변수 생성 방식 

클라이언트 측에서 쿠키 생성해 정보 저장함. 쿠키는 브라우저가 관리함.

  • 장점: 쿠키 이용하면 서버 부하를 줄일 수 있음. 또한, 쿠키는 브라우저가 관리하기 때문에 클라이언트 측에서 자유롭게 사용 가능.
  • 단점: 쿠키는 브라우저에 저장되기 때문에 보안이 취약함. 또한, 쿠키 크기는 작기 때문에 많은 정보 저장에는 부적합

  

3. 스토리지에 저장 방식

HTML5에 추가된 기능으로, 클라이언트 측에서 로컬 스토리지나 세션 스토리지를 사용하여 정보를 저장함. 
  • 장점: 쿠키보다 보안 우수. 또, 크기 제한 없어 많은 정보 저장 가능.
  • 단점: HTML5 미지원 브라우저에서는 사용 불가.

 

4. 테이블에 저장 방식

서버 측의 데이터베이스 테이블에 정보를 저장함. 
  • 장점: 서버 측에서 관리하므로 보안 우수. 또한, 정보를 영구적으로 보존 가능.
  • 단점: 서버 부하 가능성 존재함. 또, DB 접근 시간 증가 가능성 있음.

 

따라서, 정리하면 아래와 같음.

  1. 사용자 선택 스킨 정보 식별이 목적이면, 쿠키나 스토리지에 저장.
  2. 보안이 중요하면 세션 변수나 테이블에 저장
  3. 그러나, 많은 정보 저장 경우에는 세션 변수나 테이블에 저장
  4. 또한, 사용자가 로그인한 상태에서만 스킨 선택 기능 사용하려면, 세션 변수나 테이블에 저장.
  5. 브라우저 종료 후에도 정보 유지하려면, 스토리지에 저장.


마지막으로, 어떤 방식 선택하든, 보안 고민은 필수임.

  1. 중요 정보는 암호화 저장하거나, 세션/쿠키 유효시간을 짧게 설정.
  2. 또한, XSS/CSRF 같은 보안 취약점 예방 위한 대책도 반드시 강구.

 

 



분류 제목
talk tvN 드라마 「무인도의 디바」 다들 보셨나요?
ucc 회원 님 노리는 백호 호랑이 [동물]
girl tripleS(트리플에스) 마스코트 와이파이 머리 헤어 스타일
sports 「썩어도 준치」 리버풀을 두고 하는 말인 듯
girl 골프 스윙폼 끝내주는 미니스커트 누나
dance 안녕(Hola) - 걸그룹 프리티지(PRITTI-G) 예량 댄스
talk 후쿠시마 오염수 바람직한 처리 방법
ucc 이웃집 토토로 디오라마 만들기
dance 소울 SOUL 다솜 님 폭우 속 댄스 - aespa 에스파 Next Level 넥스트레벨
sports 축구소식 - [23/24 8R] 루턴타운 0 : 1 토트넘 / [아시안게임 결승] 대한민국 2 : 1 일본
ucc 히든싱어 - 진짜 홍진영 찾기
sports (레알 마드리드 vs. 맨체스터 시티) 챔피언스리그 축구 준결승전 보고 있는데...
dance 자기야 누가 꽃이게? 어? 표정이 왜 그래? 댄스
girl 소개팅 취소된 누나의 자유
sports 나폴리 김민재 약점 노출 (나폴리 연승 도전 실패)
sports 대한민국 월드컵 우승 길목을 지키고 있는 상대팀 (= 카타르 월드컵 16강 진출 국가 리스트)
pc 애드블럭 사용 안 하면서 광고 숨기기 [3레벨] 
dance 회원 님을 긴급체포합니다. 댄스
vote 고려거란전쟁 외교정책 논의에 무신 배제 찬반투표 설문 중
dance BESTie - Excuse Me 안무 연습 댄스
38/163
목록
찾아주셔서 감사합니다. Since 2012