Как решить атрибут `SameSite`

9

Я посмотрел на консоль и заметил эти предупреждения

Файл cookie, связанный с межсайтовым ресурсом по адресу http://google.com/, был установлен без атрибута SameSite. В следующем выпуске Chrome файлы cookie будут отправляться только с межсайтовыми запросами, если для них установлено значение SameSite = None и Secure. Вы можете просмотреть файлы cookie в инструментах разработчика в разделе «Приложение»> «Хранилище»> «Файлы cookie» и ознакомиться с более подробной информацией по адресу https://www.chromestatus.com/feature/5088147346030592 и https://www.chromestatus.com/feature/5633521622188032 .

Как это решить?

Tiago
источник
См. Это: web.dev/samesite-cookies-explained Это, вероятно, связано с вашим доменным именем и TLD.
12
@ vS12 Будет ли это добавить в начале моего кода? github.com/GoogleChromeLabs/samesite-examples/blob/master/…
Tiago
Я так думаю, потому что это установлено в заголовках запроса.
vS12
Незначительный текст редактировать для ясности
Tedinoz

Ответы:

3

Решение, которое сработало для меня:

Если вы используете PHP, добавьте эту строку в начало

header('Set-Cookie: cross-site-cookie=name; SameSite=None; Secure');


Обновление Вот полезный ресурс, включающий примеры на JavaScript, Node.js, PHP и Python
https://github.com/GoogleChromeLabs/samesite-examples

Джош Стовалл
источник
4
Все еще продолжается. Я поместил код в начало файла index.php, но ошибки продолжаются.
Tiago
Это не будет работать для внешних ресурсов, которые не изменили свои настройки файлов cookie. См. Github.com/GoogleChromeLabs/samesite-examples/issues/…
Майк Корменди,
3

Вы ничего не можете сделать, пока разработчики / администраторы Google (и разработчики / администраторы других внешних ресурсов) не изменят свои скрипты / серверы, чтобы включить необходимые настройки файлов cookie в файлы cookie, которые они генерируют, когда ваш сайт включает их. Смотрите здесь более подробную информацию:

https://github.com/GoogleChromeLabs/samesite-examples/issues/4#issuecomment-548598318

Если вы отлаживаете свой веб-сайт, вы можете временно игнорировать эти записи в консоли инструментов разработчика Chrome, добавив этот фильтр в поле фильтра:

-SameSite=None

Например:

Пример -SameSite = Нет фильтра в консоли инструментов разработчика Chrome

Майк Корменди
источник
1

Ваш файл .htaccess содержит код cookie, не установленный в заголовке? и вы используете cdn и его кеш как cloudflare.

Если это так, просто удалите код в htaccess

Ханс Гантенг
источник
Здравствуйте, я не использую cloudflare. Что это может быть?
Тиаго
Я думаю, что эта ссылка является лучшим ответом для этого stackoverflow.com/questions/24129201/…
Ганс Гантенг,
Посмотри, правильно ли я понял. Внутри моего htacess я добавляю эту строку Header always edit Set-Cookie (.*) "$1; HTTPOnly; Secure"?
Тиаго