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

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

1,674  

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

[질문]

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

 


[답변]

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


1. 세션변수 생성 방식 

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

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


2. 쿠키변수 생성 방식 

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

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

  

3. 스토리지에 저장 방식

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

 

4. 테이블에 저장 방식

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

 

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

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


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

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

 

 



분류 제목
web 코딩/프로그래밍 배우려는 (사람 유형별 / 공부 목적별) 공부 시작 언어 추천
web 선호하는 프로그래밍 언어별 연애 스타일
web 카카오톡 오픈 채팅방 만들기
web 크롬에서 화면 클릭 시 커서 (= 세로 검은선/검정선/검은색/검정색/세로막대) 깜빡깜빡임 증상 (제거/없애기…
web (빌더/테마/스킨/플러그인) 제작 배포 시 필수 명시 사항
web 사용자 입력값 받아 표시하기 시스템 이해하기
web 이클립스 (게터/세터/생성자) 생성. (Eclipse Getter/Setter/Constructor Crea…
web (그누커머스, 그누프레스, 그누페이) 업데이트 중단 안내
web SEO (검색 엔진 최적화) 관련 작업사항.
web 네이티브 앱 (Native App) / 웹 앱 (Web App) / 하이브리드 앱 (Hybrid App)
web 이클립스 (글꼴 / 글자 크기 = 폰트 사이즈) 조정. (Eclipse Font Size Control)
web 아나콘다 쥬피터 단축키 (Anaconda Jupyter Shortcut Key)
web 유챗 - 회원만/특정레벨만 채팅 가능 설정.
web 코드 리뷰 시 점검사항
web 구글 (드라이브 + 문서 + 프리젠테이션)
web F12 (개발자모드) console (콘솔) + SSH콘솔 + CMD모드 등에서 위에서 작성한 내용을 그대로…
web F12 (개발자모드) console (콘솔)창 열기 ★ + 한줄 밑으로 이동해 내려쓰기
web 유튜브 댓글 작성 특수기호 - (해시태그/재생시간링크/굵게/기울게/취소선)
web 코드펜 같은 웹 개발 도구 사이트 모음 ※ 코딩 결과물 바로 확인 + Emmet 에밋 (= 빠른코딩/단축코딩…
web XSS 취약점 해결
5/19
목록
찾아주셔서 감사합니다. Since 2012