Web Authentication이란 웹 애플리케이션에서 사용자의 정체성을 확인하고 적절한 권한을 부여하는 과정
다시말해 사용자가 서비스에 접근할 권한이 있는지 확인하는 과정이다.
웹 인증은 3가지로 구별된다.
사용자 등록
: 회원가입
사용자 인증
: 로그인(인증 및 인가)
세션 관리
: 서버에서 관리하는 세션, 쿠키, 토큰 등 적절하게 관리
ID/PW 기반 로그인
소셜 로그인 (Oauth2)
이메일 인증
휴대폰 인증
다중 인증요소(MFA)
HTTP 세션은 웹 애플리케이션에서 사용자 정보를 저장하는 기술이다.
HTTP 프로토콜은 Stateless하기 때문에 사용자 정보를 매번 다시 전송해야 함. 이 문제를 해결하기 위해 HTTP Session에서는 사용자 정보를 저장하고 관리하는 세션 ID를 발급함.
쿠키를 사용해 구현된다.
사용자 로그인 정보를 관리할 때 사용, 다시 접속해도 유지 됨.
HTTP Session은 서버에서 관리되기 때문에 사용자가 임의로 세션정보를 조작할 수 없다. 랜덤하게 생성되며 HTTPS를 통해서 암호화 된다.