로그인 프로세스를 구축하기 위해서는 우선적으로 Cookie, Local Storage, Session Storage를 먼저 알아야 한다.
해당 도메인과 관련된 특정 데이터를 서버가 아니라 클라이언트 웹브라우저에 저장할수 있도록 제공되는 기능으로, 쿠키와 비슷한 기능이며, 영구저장소인 Local Storage와 임시저장소인 Seesion Storage로 나뉜다.
영구저장소인 만큼 브라우저를 닫았다 열어도 유지된다. 데이터를 지우지 않는이상 영구적으로 보관이 가능하며, 도메인마다 별도로 Loacal Storage가 생성된다. 도메인마다 별도로 가질 수 있지만 도메인이 같다면 같은 도메인끼리 공유도 가능하다.
임시저장소이기 때문에 브라우저가 열려있는 상태에선 새로고침을 해도 살아있지만, 브라우저를 닫으면 삭제된다. 세션에는 쿠키에 담기에는 민감한 개인정보를 담아 브라우저의 서버에 저장 한 후 이용자가 서버를 이용할때마다 http요청에 이 키를 실어서 전송하고 서버는 그 키를 보고 사용자를 인식하여 사용자의 정보를 가공하여 보내주게 된다. 그렇기 때문에 우리는 한번 로그인된 사이트를 재 로그아웃 하기전에는 또는 창을 끄기 전에는 계속해서 이용 할수 있게되는것이다.
쿠기는 브라우저 로컬에 저장되는 키 벨류값이 들어있는 데이터파일이다.
사용자가 인증 시간을 지정해 줄수 있고, 지정된 시간안에는 브라우저를 종료하여도 인증역할은 그대로 유효하다. 쿠키는 사용자가 따로 요청하지 않아도, 브라우저가 요청시에 Request Header를 넣어 자동으로 서버에 전송한다. 쿠키는 내 브라우저에 저장되는 정보이며, 내가 사이트를 방문하고 이용 할때마다 브라우저에 저장되는 내용이다. 쿠키는 내가 가지고있는 정보이기 때문에 쉽게 가공될수 있고, 다른사람이 내 정보를 손쉽게 빼갈수있다는 단점이 존재한다. 이는 로그인, 장바구니, 공지 하루동안 안보기 등등.. 에서 이용할수있다. 사용자의 편의에 의해 조작되거나 가로채여도 큰 문제가없을만한 정보를 저장하게된다.
어떤 정보를 쿠키에 저장하고 세션에 저장할지 잘 판단하여 코드를 작성해야 한다. 보안을 위해 모든 데이터를 세션에 저장하게 된다면 효율성이 떨어지게된다.