
오늘은 로그인과 인증, 인가에 대해서 알아볼려고 한다.
인증(=로그인) : Authentication
즉 로그인을 하는 이유나, 로그인이 필요한 이유가 뭐냐면
인가 : Authorization
관리자 / 고객
고객 유저는 관리자 페이지에 들어갈 수 없음!
같은 사이트 내에 관리자 / 고객에 따라 접근할 수 있는 페이지가 다르다!
즉,
다시, 쉽게 말해볼게.
로그인을 하면 서버가 너의 쿠키를 구워줘.
그럼 쿠키를 너가 가지고 있다가, 너가 다른 사이트에서 놀다가 다시 돌아와서 그 쿠기를 내면, 서버 입장에서는 아 너 아까 왔던 애지?
다시 너가 작업한 대로 사이트를 보여줄게. 라는 뜻이야.
장점 : 서버가 저장x => 서버 저장 공간, HTTP
Stateless => RESTful
단점 : 보안에 조금 취약함. 너가 쿠기를 뺏길 수도 있고, 쿠기를 서버에 전달할 때, 누군가에게 뺏길 수도 있음.
그래서
쿠키에 중요한 정보를 담지 말고, 중요한 정보는 서버에 저장해두고, 그 정보가 어딨는지 주소만 적어서 Cookie에 담자!
로그인을 하면 서버가 금고를 만들어서, 그 금고에 정보를 저장해둬.(중요한 정보를 저장해두는 거지)
그리고 금고의 번호를 너에게 줘.
장점 : 보안이 좀 더 좋아짐. 비교적으로
단점 : 서버가 저장을 함.. 서버 저장 공간을 쓴다는 거고 => Stateless 하다고 표현할 수 없음..