Safari sendet auch nach dem Setzen von SameSite = None kein Cookie; Sichern


13

Unsere Anwendung verwendet Cookies, um sich an die Benutzeranmeldung zu erinnern. Bei jedem Authentifizierungs-API-Aufruf, den wir ausführen, hängt der Browser ein vom Server festgelegtes HTTPonly-Cookie an die API-Anforderung an und wird authentifiziert. Dieses Verhalten scheint in der Safari nach der Veröffentlichung von Mojave gebrochen zu sein.

Ich habe über die Cross-Site-Cookie-Sicherheit gelesen, die von Safari implementiert wurde, und unser Serverteam hat SameSite=None;Securebeim Setzen des Cookies hinzugefügt . Auch danach funktioniert es immer noch nicht.

Set-Cookie: my_cookie=XXXXX; path=/; secure; HttpOnly; SameSite=None

Bitte beraten oder geben Sie Links von Personen an, die tatsächlich eine Lösung gefunden haben.

Antworten:


15

Versionen von Safari unter MacOS 10.14 und alle Browser unter iOS 12 sind von diesem Fehler betroffen, was bedeutet, dass er SameSite=Nonefälschlicherweise als SameSite=Strictz. B. die restriktivste Einstellung behandelt wird.

Ich habe einige Anleitungen in SameSite-Cookie-Rezepten zu folgenden Themen veröffentlicht:

  • Verwenden von zwei Cookiesätzen, um Browser zu berücksichtigen, die dies unterstützen, SameSite=None; Secureund solche, die dies nicht tun.
  • Sniffing des Benutzeragenten für inkompatible Browser und nicht SameSite=Nonefür diese Anforderungen dienen.

1
Hallo Rowan, danke für die Antwort und entschuldige mich für die späte Antwort. Ich habe mein serverseitiges Team gebeten, die Anleitung über den obigen Link web.dev auszuprobieren. Vielleicht ist dies eine völlig unangemessene Frage. Da Millionen von Benutzern von der Änderung betroffen sind, gibt es Neuigkeiten, wenn das Apple-Team in Zukunft einen Plan zur Lösung des Problems hat?
DieOnTime

Ich kann nicht für das Apple / Safari-Team sprechen. Ich denke, der ursprüngliche Fehler ist der beste Ort für diese Diskussionen.
rowan_m

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.