[ 인증/인가 ]
인증 (Authentication) : 사용자의 신원 검증
인가 (Authorization) : 사용자가 특정 기능에 엑세스할 수 있도록 권한을 부여하는 프로세스
인증 방식의 종류
1. Cookie
: key-value 형식의 문자열로 구성되어 있고, 클라이언트가 웹사이트를 방문할 때, 사이트가 사용하고 있는 서버를 통해 클라이언트의 브라우저에 설치되는 기록 정보 파일
- 단점 : 쿠키값이 그대로 노출되어 있기 때문에 보안에 취약하고 용량 제한이 존재함
2. Session
: 인증정보를 서버 측에서 저장하고 관리하는 방식 (보안이슈). Session ID(key)와 value로 구성. value에는 생성시간, 마지막 접근 시간 등 데이터가 Map 형태로 저장됨
- 단점 : seesion id 자체를 탈취하여 위장할 가능성이 있고, 서버에 세션 저장소를 사용하기 때문에 요청이 많아지면 서버 부하가 심해짐
3. Token
: 클라이언트가 접속하게 되면 서버에서 인증되었다는 의미의 토큰을 부여. (토큰은 고유하고, 클라이언트는 서버에 요청할 때마다 토큰을 함께 보냄) 서버에서는 해당 토큰으로 인증 과정을 처리함
- 과정 : 사용자가 로그인하면 서버에서 토큰 발급 > 클라이언트는 받은 토큰을 쿠키나 스토리지에 저장하고, 서버에 요청할 때마다 토큰을 HTTP 헤더에 포함하여 전달 > 서버는 전달받은 토큰을 인증하고 요청에 응답. 토큰에 정보가 담겨있기 때문에 DB를 조회하지 않아도 됨
- 단점 : 데이터 길이가 길고, 요청이 많아지면 네트워크 부하가 많아질 가능성이 있음.
'스파르타 내배캠' 카테고리의 다른 글
[TIL] #30. Filter (0) | 2024.06.03 |
---|---|
[TIL] #29. JWT (0) | 2024.06.03 |
[TIL] #27. JWT Util (0) | 2024.05.30 |
[TIL] #26. entity 연결 (0) | 2024.05.28 |
[TIL] #25. HTTP 응답 상태 반환 (0) | 2024.05.28 |