Notre application utilise des cookies pour mémoriser la connexion de l'utilisateur. Chaque appel d'API d'authentification que nous faisons, le navigateur attache un cookie HTTPonly défini par le serveur à la demande d'API et est authentifié. Ce comportement semble être rompu dans Safari après la sortie de Mojave.
J'ai pris connaissance de la sécurité des cookies intersites mise en œuvre par safari et notre équipe de serveurs a ajouté SameSite=None;Secure
lors de la configuration du cookie. Même après cela, cela ne fonctionne toujours pas.
Set-Cookie: my_cookie=XXXXX; path=/; secure; HttpOnly; SameSite=None
Veuillez conseiller ou fournir des liens de personnes qui ont trouvé une solution.
Les versions de Safari sur MacOS 10.14 et tous les navigateurs sur iOS 12 sont affectés par ce bogue ce qui signifie que SameSite=None
est traité à tort comme SameSite=Strict
, par exemple. le réglage le plus restrictif.
J'ai publié quelques conseils dans recettes de cookies SameSite sur l'un ou l'autre:
SameSite=None; Secure
et ceux qui ne le font pas.SameSite=None
pour ces demandes.Pour les applications codées en Ruby (en particulier, Rails, Sinatra ou quoi que ce soit au-dessus de Rack), le RailsSameSiteCookie gem résout très bien ce problème et les problèmes connexes. Le code se lit comme un traduction proche du pseudocode dans la discussion Chromium sans les regex cassants.