session을 사용하는 인증 방식은 stateful한 인증 방식이다.
👉 이전에 session 인증에 대해 적어둔 글
위의 글에서 적어두었듯이 session을 관리하기 위한 방법으로는
가 존재한다.
표준으로는 cookie를 사용한 session 처리를 사용하며 이 외에, local storage, indexed DB에 저장하는 방식도 있다.
session을 직접 이용하지 않고 cookie를 사용하는 방식을 선택하는 이유는 session은 서버에 저장이 되므로 사용자가 늘어날 경우 소비되는 자원의 양이 상당히 커지기 때문이다.
따라서 session이 cookie에 비해 보안상 좋지만 session만이 아닌 cookie를 함께 사용한다.
session data는 사용자에 대한 정보로 보안상 중요한 정보이기 때문에, secret key으로 encode되어 있다.
따라서 session을 사용하기위해서는 secret key를 꼭 필요로 하며, config 값으로 저장되어있다.
session data는 cookie로 전달받은 session id(key)를 통해 접근이 가능하며, load될 때 secret key를 이용하여 decode된다.
authorization code grant
방식의 인증과 같은 경우는 login된 상태를 필요로 하는 방식이기 때문에 session 관리를 필요로 한다.