2개의 다른 domain 에서 서버가 같은 상위 domain 을 사용하는 cookie 를 생성하도록 경우, 브라우저의 credential: 'include'
동작
만약 a.domain.net
, b.domain.net
이 모두 Domain을 자신들의 상위 도메인인 .domain.net
으로 해서 Set-Cookie 를 날리는 상황을 가정해보자.
a.domain.net :
Set-Cookie: session=11111111111; path=/; domain=.domain.net; HttpOnly
b.domain.net :
Set-Cookie: session=22222222222; path=/; domain=.domain.net; HttpOnly
A라는 사이트에서 login 은 해서 cookie 가 만들어졌다. 이때 credential 을 include 하면 이 cookie 가 request 시점에 날라간다.
이 때 B라는 사이트에서 login을 한다. 그런데 같은 domain 에 대해서 만들기 때문에, A 라는 사이트에서 사용하던 cookie 가 browser에서 지워지고, 새롭게 B site 에서 사용할 cookie 가 만들어진다.
cookie 는 도메인 별로 unique 하게 존재하지만, 이것을 해당 domain 외의 domain 에서 access 하는 것 또한 same-origin policy 를 따라야 해서, browser에서 다른 site A로 request를 보낼때 credential(cookie)이 없는 채로 날라간다.
즉, domain 설정을 잘 해줘야 2 site 에서 동시에 cookie 를 사용할 때 문제가 없다.
See Also
- http - Share cookies between subdomain and domain - Stack Overflow
- https://setcookie.net/ : 여기서
Set-Cookie
의 domain설정을 해서 테스트해 볼 수 있다.
댓글 없음:
댓글 쓰기