Enjoy Programming

Cookie - property 본문

JavaScript/Node.JS

Cookie - property

LEETAEEON 2021. 6. 9. 23:27

간단하게 Cookie의 property에서 중요한 정보를 좀 짚고 넘어가자

 

그보다 먼저 express-session에 secret prop에 대해 알아본다.

secret은 쿠키에 sign할때 사용하는 string이다.

쿠키에 sign? 이 말은 backend가 쿠키를 발행했다는 것을 보여주는 것이다.

나의 쿠키를 누군가 해킹해 나인척 하는 session hijack에서 보호하기 위해  secret string이 필요하다

이 string은 매우 길고 무작위이며 강력해야 한다. 이 강력한 string으로 쿠키를 sign하고 나의 backend가 만든 것임을

증명한다.

 

. Domain .

Domain은 해당 쿠키를 만든 backend가 누구인지 나타낸다. 그리고 쿠키는 해당 Domain에 있는 backend로만 전송된다.

. path .

단지 url이다 그냥...

. Expires .

유효기간. 만료날짜? 위 사진에는 session이라고 적혀있어 만료 날짜가 명시되지 않았다.

만약 만료날짜를 지정하지 않으면 위처럼 session cookie로 설정되고 사용자가 shuts down하게 되면

session cookie는 끝나게 된다.

그런데~~ 저기에는 나와있지 않지만 db에 저장된 session 정보에는

친절하게도 잘 나타나있다. 오늘이 9일이니 꽤 많이 남았다.

. Max-Age .

말 그대로 세션이 언제 만료되는지 알려줌.

 

session에 20000milliseconds (20초)로 maxAge를 주고 

다시 접속해보면

이렇게 바뀌어있고~ 20초뒤 새로고침하면 로그아웃 되며 쿠키도 사라진다~!~! 굳

로그인 유지하기나 중요한 사이트의 경우 일정시간 반응이 없으면 로그아웃 되게 되어있는데 이걸 이용하면 될거 같다.