Safari nie wysyła plików cookie nawet po ustawieniu SameSite = None; Bezpieczne


13

Nasza aplikacja korzysta z plików cookie w celu zapamiętania loginu użytkownika. Przy każdym wywołaniu API autoryzacji przeglądarka dołącza ustawiony na serwerze plik cookie HTTP tylko z żądaniem interfejsu API i zostaje uwierzytelniona. To zachowanie wydaje się być zepsute podczas safari po wydaniu Mojave.

Czytałem o bezpieczeństwie plików cookie między witrynami wdrożonym przez safari, a nasz zespół serwerów dodał SameSite=None;Securepodczas ustawiania pliku cookie. Nawet po tym nadal nie działa.

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

Proszę doradzić lub podać linki od osób, które faktycznie znalazły rozwiązanie.

Odpowiedzi:


15

Błąd dotyczy wersji Safari na MacOS 10.14 i wszystkich przeglądarkach na iOS 12, co oznacza, że SameSite=Nonejest błędnie traktowany jako SameSite=Strictnp. Najbardziej restrykcyjne ustawienie.

Opublikowałem wskazówki dotyczące przepisów na ciasteczka SameSite na temat:

  • Używanie dwóch zestawów plików cookie w celu uwzględnienia przeglądarek, które obsługują SameSite=None; Securei tych, które nie obsługują .
  • Wykrywanie agenta użytkownika w poszukiwaniu niekompatybilnych przeglądarek i brak wyświetlania SameSite=Nonetych żądań.

1
Cześć Rowan, dziękuję za odpowiedź i przepraszam za spóźnioną odpowiedź. Poprosiłem mój zespół po stronie serwera o wypróbowanie wskazówek z powyższego linku web.dev. Być może jest to całkowicie niewłaściwe pytanie, tak czy inaczej. Ponieważ zmiana ma wpływ na miliony użytkowników, czy są jakieś wieści, jeśli zespół Apple opracuje w przyszłości plan rozwiązania tego problemu?
DieOnTime,

Nie mogę mówić w imieniu zespołu Apple / Safari. Myślę, że oryginalny błąd jest najlepszym miejscem do tych dyskusji.
rowan_m

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.