Я пытаюсь следовать новым правилам для межсайтовых cookie-файлов и передаю атрибуты SameSite=None; Secure
с cookie-файлами, когда пытаюсь установить их в браузере Javascript код.
Мы отправляем нашу SSO / авторизацию javascript комплект из отдельного хоста и домена, который должен установить в браузере команду cook ie для хранения sessionToken. Ожидается, что этот повар ie будет использоваться в браузере refre sh для поддержки сеанса пользователя.
После обновления до Chrome 80 повар ie больше не сохраняется в браузере из-за на следующую ошибку:
A cookie associated with a cross-site resource at <sso_domain> was set without the
`SameSite` attribute. It has been blocked, as Chrome now only delivers cookies with
cross-site requests if they are set with `SameSite=None` and `Secure`. You can review
cookies in developer tools under Application>Storage>Cookies and see more details at
https://www.chromestatus.com/feature/5088147346030592 and https://www.chromestatus.com/feature/5633521622188032.
Мы используем js -cook ie, чтобы установить повара ie, который использует браузеры document.cookie
для его фактического создания: https://github.com/js-cookie/js-cookie/blob/master/src/api.mjs#L38
Изначально мы не передавали атрибут SameSite
через параметр attributes
(мы передавали Secure
), но даже после обновления нашего вызова до js -cook ie и видя соответствующий stringifiedAttributes
в Chrome инспекторе (оба Secure
и SameSite=None
): SameSite cook ie атрибут в Chrome инспекторе
Я все еще вижу ошибка в консоли chrome: ошибка в консоли
Операционная система: OSX
Chrome версия: версия 80.0.3987.149 (официальная сборка) (64-разрядная версия)