📜 TIL

session과 token

둥굴둥굴둥굴레차 2021. 10. 2. 00:55

 

만약 세션이나 토근이 존재하지 않다면?

Gmail에 로그인했는데 메일함을 체크할 때 마다 메일을 적을 때 마다 로그인을 해야한다면 매우 불편할 것.

 

[참고] 인증과 인가
인증 : 특정 서비스에 권한이 주어진 사용자임을 인증받음.
인가 : 인증받은 서비스가 이후의 서비스들을 이용할 수 있도록 허가 받는 것.

 

세션(Session)

기존에 전통적으로 많이 사용해온 방식.

새로운 요청 마다 세션을 실어서 어떤 사용자가 로그인이 되어있도록 유지시켜준다.

따라서 사용자가 동시에 많이 접소하면 메모리가 부족해지고 메모리위에 세션이 올라가있게 되면 날아가버린다.

사용자는 로그인을 다시 해야한다.

만약 하드나 디비에 넣는다면 메모리에서 바로바로 꺼내서 인증하는 것보단 오래걸린다.

이 것 말고도 다양한 이유는 있으나 일단 패스!

 

JWT(JSON Web Token)

이러한 부담없이 인가를 구현하기 위해 나온 것이 JWT.

이제 로그인하면 token을 유저에게 줘버리고 서버에는 아무것도 남지 않는다.

인코딩 혹은 암호화된 문자로 이루어져있다.