Session authentication(세션 인증)

 안녕하세요. 이번에는 세션에 대해서 알아보도록 하겠습니다. 세션은 유저가 로그인을 한 후 서버에서 클라이언트 쪽으로 응답 및 Session token(세션 토큰)을 전달해 주는 것입니다. 


사진1) 유저가 로그인 할

 0번 : 처음 유저가 로그인을 진행할때 ID, Password를 클라이언트에 입력합니다. 
 1번 : 이후 로그인 정보를 클라이언트가 서버쪽으로 전달
 2번 : 서버에서 DB쪽과 조회해서 실제 존재하고 비밀번호가 맞는지 확인합니다. 
 3번 : DB에서 로그인 정보가 맞다는 것을 인증.
 4번 : Session토큰을 생성하고 이를 클라이언트에 응답으로 전달 또 DB에도 저장을 합니다.
 5번 : 생성한 Session토큰을 DB에 저장


사진1에서 Session토큰은 사용자의 정보를 바탕으로 만들어 집니다.(비밀번호는 제외) 해당 토큰은 각각 클라이언트와 DB에 저장이 됩니다. 해당 토큰이 중간에 해킹당할것을 대비하는 차원에서 사용할수있는 제한시간을 둘수 있습니다.
사진2) 로그인 이후 Data요청


 0번 : 유저가 정보를 요청하기 위해 클라이언트에 입력합니다. 
 1번 : 이후 클라이언트가 Session토큰 정보와 함께 서버쪽으로 요청을 합니다.
 2번 :서버에서 토큰을 분석후 DB에 조회를 합니다.
 3번 : DB에서 해당유저 정보가 맞다는 것을 인증.
 4번 : 요청 자료를 DB에서 조회합니다.
 5번 : 요청 자료를 클라이언트로 응답합니다.

 이제 클라이언트는 토큰을 이용하여 서버에 자유롭게 요청을 보낼수 있습니다. 

JavaScript코드를 짜고 싶으시면 해당 링크를 참고해 주시기 바랍니다.

댓글

이 블로그의 인기 게시물

Lesson 12_1 프로퍼티 노드(Property Node)

DAQ로 전압 측정하기-2

Lesson 12_2 참조를 이용한 프로퍼티노드(Property Node)