SameSite = Lax работает удаленно, но не локально - PullRequest
0 голосов
/ 02 апреля 2020

Я вижу поведение, которое не могу объяснить при установке повара ie внутри фрейма с помощью SameSite=Lax.

У меня есть два веб-сервера, один на your.example.com, а другой на my.example.com. your.example.com загружает my.example.com внутри фрейма, где my.example.com устанавливает повара ie. Это отлично работает на реальных удаленных веб-серверах, и cook ie устанавливается без каких-либо проблем.

В моей локальной среде я загружаю один в localhost, который затем загружает my.localhost внутри iframe. Когда my.localhost возвращает повара ie, я вижу следующую ошибку на вкладке Chrome Networking: The set-cookie had the "SameSite=Lax" attribute but came from a cross-origin response.

Если я загружаю адрес my.localhost на своей вкладке, то повар ie устанавливается правильно, но когда я вернулся localhost я вижу следующую ошибку в дополнение к предыдущему сообщению об ошибке: This cookie had the "SameSite=Lax" attribute and the request was made on a different site. This does not include navigation requests initiated by other sites.

Я использую Chrome Версия 80.0.3987.162 (Официальная сборка) (64- немного). Может кто-нибудь объяснить, пожалуйста, это поведение и как заставить это работать локально?

1 Ответ

1 голос
/ 07 апреля 2020

Я думаю, что вы получите желаемое поведение, если переместите все на уровень ниже. Под этим я подразумеваю трактовать dev.localhost или подобный поддомен как домен верхнего уровня. Установите куки с доменов dev.localhost, и вы увидите, что my.dev.locahost и your.dev.localhost рассматриваются как один и тот же сайт. Другими словами, ваши SameSite=Lax куки-файлы должны быть разрешены.

Предупреждение: Мне нужно go вернуться и еще раз проверить это, но я вполне уверен, что это сработало, когда я протестировал подобную установку! Поэтому, пожалуйста, попробуйте это сами и проверьте.

...