Safari tidak mengirim cookie bahkan setelah pengaturan SameSite = Tidak Ada; Aman

13

Aplikasi kami menggunakan cookie untuk mengingat login pengguna. Setiap panggilan API auth yang kami lakukan, browser melampirkan cookie HTTPly yang ditetapkan server dengan permintaan API dan akan diautentikasi. Perilaku ini tampaknya rusak di safari setelah rilis Mojave.

Saya membaca tentang keamanan cookie lintas-situs yang dilaksanakan oleh safari dan tim server kami menambahkan SameSite=None;Securesaat mengatur cookie. Bahkan setelah itu, tetap saja tidak berhasil.

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

Mohon saran atau berikan tautan dari orang-orang yang benar-benar menemukan solusi ..

DieOnTime
sumber

Jawaban:

15

Versi Safari di MacOS 10.14 dan semua browser di iOS 12 dipengaruhi oleh bug ini yang berarti SameSite=Nonediperlakukan secara keliru sebagai SameSite=Strict, misalnya pengaturan yang paling ketat.

Saya telah menerbitkan beberapa panduan dalam resep kue SameSite di:

  • Menggunakan dua set cookie untuk akun browser yang mendukung SameSite=None; Securedan yang tidak.
  • Mengendus agen pengguna untuk browser yang tidak kompatibel dan tidak melayani SameSite=Nonepermintaan tersebut.
rowan_m
sumber
1
Halo Rowan, Terima kasih atas balasan dan permintaan maaf atas keterlambatannya. Saya telah meminta tim sisi server saya untuk mencoba panduan dari tautan web.dev di atas. Mungkin ini pertanyaan yang sangat tidak pantas untuk ditanyakan, toh begini saja. Karena jutaan pengguna dipengaruhi oleh perubahan, ada berita jika ada rencana di masa depan dari tim apel untuk menyelesaikannya?
DieOnTime
Saya tidak dapat berbicara untuk tim Apple / Safari. Saya pikir bug asli adalah tempat terbaik untuk diskusi itu.
rowan_m