jwt 2

세션 기반 인증과 토큰 기반 인증(feat. 인증과 인가)

세션기반 인가와 토큰기반 인가에 대해 알아보기 이전에 먼저 인증과 인가가 무엇인지 알아야할 필요가 있다. 단어가 비슷해서 행위가 비슷할 수 있지만 그 뜻이 무엇인지 알아보자. 인증 과 인가는 요약하자면 시스템의 자원을 적절하고 유효한 사용자에게 전달하고 공개하는 방법 인증과 인가의 사전적 의미를 보자면 인증 (authentication): 사용자가 자신이 주장하는 신원이나 정보의 진위여부를 확인하는 과정이다. 사전적의미는 와닿지는 않지만 쉽게 말하자면 내가 로그인 화면에서 id와 passwrod를 입력해서 제출을 하면 user1 이라는 것을 입증을 하게 된다. 이러한 행위 즉, 인증은 쉽게 말하자면 로그인 이다. 인가 (accreditation): 인가는 인증 작업 이후에 행해지는 작업이며 사용자에게 특..

jwt 2023.04.12

JWT 이해하기와 활용 방안

SESSION 및 JWT(JSON 웹 토큰)는 모두 웹 애플리케이션에서 사용자를 인증하고 권한을 부여하는 방법입니다. SESSION 로그인시 각 사용자에게 고유 식별자 (세션ID)가 할당되고 이 ID가 서버측에 저정되는 서버측 메커니즘이다. 사용자가 서버에 요청을 보낼 때마다 서버는 세션 ID를 확인하여 사용자를 식별하고 세션데이터를 검색!! ->세션을 검증하기위해서는 서버에서 세션 데이터를 저장하고 관리해야 하므로 서버에 부담이 된다. JWT(STATELESS) 사용자 인증시 토큰이 생성되고 서버에서 비밀 키로 서명되는 클라이언트 측 메커니즘이다. 사용자가 서버에 요청을 보낼 때마다 요청 헤더에 토큰이 포함되고 서버는 토큰의 서명을 확인하고 사용자 정보를 추출한다.JWT는 비저장이며 확장성과 유지관리가..

jwt 2023.03.30