반응형
1. 쿠키(Cookie)
- 개념: 쿠키는 웹 서버가 사용자의 웹 브라우저에 저장하는 작은 데이터 파일입니다.
- 용도: 주로 사용자 식별, 세션 관리, 사용자 설정 유지 등에 사용됩니다.
- 특징:
- 클라이언트 측(브라우저)에 저장됨.
- 만료 기간을 설정할 수 있음.
- HTTP 요청 시 자동으로 서버에 전송됨.
- 저장 위치: 사용자의 웹 브라우저.
2. 세션(Session)
- 개념: 세션은 서버 측에서 사용자와의 상호작용을 지속적으로 유지하기 위한 데이터 저장소입니다.
- 용도: 사용자 로그인 상태 유지, 사용자별 데이터 관리 등에 사용됩니다.
- 특징:
- 서버 측에 저장됨.
- 세션 ID는 클라이언트의 쿠키에 저장됨.
- 서버 메모리나 데이터베이스에 저장될 수 있음.
- 저장 위치: 서버의 메모리 또는 데이터베이스.
3. 토큰(Token)
- 개념: 토큰은 인증 및 권한 부여를 위해 서버에서 생성한 문자열입니다.
- 용도: 사용자의 신원 확인, API 접근 제어 등에 사용됩니다.
- 특징:
- 주로 클라이언트 측에 저장됨.
- 서버에 저장되지 않음 (서버는 토큰을 검증할 수 있는 방법을 알고 있어야 함).
- 다양한 포맷으로 존재 (예: JWT).
- 저장 위치: 클라이언트의 로컬 스토리지나 세션 스토리지.
4. JWT(Json Web Token)
- 개념: JWT는 JSON 객체를 사용하여 양 당사자 간에 정보를 안전하게 전송하기 위한 토큰입니다.
- 구조: Header, Payload, Signature의 세 부분으로 구성됨.
- 용도: 주로 인증과 권한 부여에 사용됨.
- 특징:
- 자체적으로 정보를 포함하고 있음 (무상태).
- 클라이언트 측에 저장됨.
- Base64 URL-safe 인코딩 사용.
- 저장 위치: 클라이언트의 로컬 스토리지나 세션 스토리지.
반응형
'Spring boot' 카테고리의 다른 글
Spring Data JPA Illegal attempt to set lock mode for a native query (0) | 2024.08.04 |
---|---|
Spring 끄적끄적(5) @Transactional , Stream (0) | 2024.08.02 |
@NotNull vs @NotEmpty (0) | 2024.07.29 |
@ModelAttribute vs @RequestBody (0) | 2024.07.28 |
CI/CD란 무엇인가 (0) | 2024.07.25 |