ไม่มีคุกกี้สยอง

คุกกี้สดใหม่ที่สุด แล้วสูตรล่าสุดอะไรที่จะช่วยให้คุณได้เพลิดเพลินกับฤดูกาลแห่งสยองขวัญโดยไม่ต้องมีคุกกี้เก่า

คุกกี้สดใหม่ที่สุด แล้วสูตรล่าสุดอะไรที่จะช่วยให้คุณเพลิดเพลินกับช่วงเทศกาลชวนขนลุกได้หากไม่มีคุกกี้ที่ไม่มีอัปเดต

เรากำลังดำเนินการเพื่อเลิกใช้คุกกี้ของบุคคลที่สามในแพลตฟอร์มเว็บ นั่นเป็นเป้าหมายสำคัญในการจัดการกับการติดตามข้ามเว็บไซต์ แต่ก็เป็นส่วนหนึ่งของเส้นทางที่ค่อนข้างยาวนาน มาดูกันว่าเราก้าวมาไกลแค่ไหนและ จะมีการมอบคอนเทนต์อะไรบ้างในอนาคต...

คุกกี้จะมีการจัดเก็บคีย์-ค่าแบบง่ายที่ส่งระหว่างเบราว์เซอร์กับเซิร์ฟเวอร์ ซึ่งอาจให้ฟังก์ชันการทำงานที่มีประโยชน์ในเว็บไซต์ เช่น การบันทึกค่ากำหนด theme=bats หรือการจัดเก็บรหัสเซสชันสำหรับผู้ใช้ที่ลงชื่อเข้าใช้

คุกกี้ของบุคคลที่สามที่มีค่าง่ายๆ เช่น "theme=bats หรือ fav_pumpkins=us-nyc"

หากมีการใช้คุกกี้นั้นในเว็บไซต์เดียวกันกับที่ตั้งค่าคุกกี้ดังกล่าว เรามีแนวโน้มที่จะเรียกคุกกี้ของบุคคลที่หนึ่ง หากมีการใช้คุกกี้ซึ่งเป็นส่วนหนึ่งของเว็บไซต์อื่นที่ไม่ใช่เว็บไซต์ ซึ่งตั้งค่าไว้ เราจะเรียกว่าคุกกี้ของบุคคลที่สาม ตัวอย่างเช่น คุกกี้ theme=bats ของฉันจะเป็นบุคคลที่หนึ่งหากฉันเข้าชมเว็บไซต์นั้นที่ตั้งค่าก็ตาม แต่หากคุกกี้นั้นรวมอยู่ใน iframe หรือทรัพยากรแบบข้ามเว็บไซต์อื่นๆ โดยเป็นส่วนหนึ่งของเว็บไซต์อื่น คุกกี้ดังกล่าวจะเป็นคุกกี้ของบุคคลที่สาม

ปัญหาสำหรับคุกกี้ของบุคคลที่สามคือคุกกี้ประเภทนี้จะเปิดใช้การติดตามข้ามเว็บไซต์ได้ แทนที่จะตั้งค่าบางอย่าง เช่น ธีม บริการที่แชร์อาจเก็บตัวระบุทั้งหมดไว้ในนั้น จากนั้นระบบจะส่งตัวระบุเดียวกันนี้เมื่อคุณไปยังส่วนต่างๆ ของเว็บไซต์ที่มีคุกกี้ของบริการที่แชร์ ซึ่งหมายความว่าบริการหนึ่งจะสังเกตการณ์และลิงก์กิจกรรมของคุณในเว็บไซต์เหล่านั้นได้

คุกกี้ของบุคคลที่สามที่มีรหัสที่ไม่ซ้ำกันซึ่งทำให้เว็บไซต์ของบุคคลที่สามสามารถติดตามผู้ใช้ไปทั่วทั้งเว็บ

คุกกี้ของบุคคลที่หนึ่งโดยค่าเริ่มต้น

เรามีความคืบหน้าในการดำเนินการที่นี่แล้ว ก่อนหน้านี้คือการตั้งค่าคุกกี้ธรรมดา กล่าวคือ ระบบจะส่ง theme=pumpkins ในทุกบริบท ไม่ว่าจะเป็นแบบเว็บไซต์เดียวกันหรือแบบข้ามเว็บไซต์ เว็บไซต์ส่วนใหญ่ต้องการให้ส่งคุกกี้ในบริบทเว็บไซต์เดียวกันเท่านั้น ซึ่งควบคุมผ่านแอตทริบิวต์ SameSite ในคุกกี้ได้ เช่น

Set-Cookie: theme=bats; SameSite=Lax

การดำเนินการนี้จะบอกให้เบราว์เซอร์ส่งคุกกี้ก็ต่อเมื่อทรัพยากรตรงกับเว็บไซต์ระดับบนสุดเท่านั้น อย่างไรก็ตาม นั่นหมายความว่าเว็บไซต์ต้องระบุเวลาที่ต้องการคุกกี้ของบุคคลที่หนึ่ง ในแง่ความปลอดภัยนั้นย้อนกลับมาเล็กน้อย ที่จริงแล้วคุณควรถามเมื่อคุณต้องการสิทธิ์เพิ่มเติม ไม่ใช่เพียงสิทธิ์นั้นโดยค่าเริ่มต้น

ดังนั้น SameSite=Lax จึงเป็นค่าเริ่มต้น หากคุณเพิ่งตั้งค่า theme=bats ระบบจะส่ง URL ในบริบทของเว็บไซต์เดียวกันเท่านั้น

ค่า SameSite=Lax เริ่มต้นจะหยุดการส่งคุกกี้ในบริบทของบุคคลที่สาม

หากต้องการคุกกี้ข้ามเว็บไซต์หรือของบุคคลที่สาม (บางทีคุณอาจต้องการธีมที่แสดงในวิดเจ็ตแบบฝัง) คุณจะต้องระบุข้อมูลต่อไปนี้

Set-Cookie: theme=bats; SameSite=None; Secure
ค่า SameSite=None จะทำเครื่องหมายคุกกี้ที่จะส่งในบริบทแบบข้ามเว็บไซต์

การดำเนินการนี้จะบอกเบราว์เซอร์ว่าคุณต้องการให้ส่งคุกกี้ในบริบทแบบข้ามเว็บไซต์ใดๆ แต่เราต้องการจำกัดเพียงการเชื่อมต่อที่ปลอดภัยเท่านั้น

ได้คุกกี้ของบุคคลที่หนึ่งซึ่งอร่อยกว่า

แม้ว่าค่าเริ่มต้นจะดีขึ้นเรื่อยๆ แต่คุณก็ยังมีพื้นที่ให้คุณปรับปรุงสูตรอาหารนั้นอยู่ เชิญลองทำแบบสั้นๆ ด้วยกัน

Set-Cookie:  __Host-theme=bats;
  Secure;
  Path=/;
  HttpOnly;
  Max-Age=7776000;
  SameSite=Lax;

ซึ่งจะทำให้คุณได้รับคุกกี้ของบุคคลที่หนึ่งซึ่งถูกจำกัดไว้ที่โดเมนเดียวเท่านั้น การเชื่อมต่อที่ปลอดภัย ไม่มีสิทธิ์เข้าถึง JavaScript จะหมดอายุโดยอัตโนมัติก่อนที่ URL นั้นจะไม่มีการอัปเดต และ (แน่นอน!) ได้รับอนุญาตในบริบทของเว็บไซต์เดียวกันเท่านั้น

คุกกี้อร่อยขึ้นด้วย CHIPS!

ความสามารถพิเศษอย่างหนึ่งของเว็บคือความสามารถในการสร้างไซต์หลายๆ ไซต์ไว้ด้วยกัน สมมติว่าฉันต้องการสร้างวิดเจ็ตแผนที่เพื่อให้เว็บไซต์อื่นๆ แสดงทัวร์ชมสวนฟักทองที่ดีที่สุดหรือเส้นทางทริกออร์ทรีตได้ บริการของผมใช้คุกกี้ เพื่อให้ผู้ใช้จัดเก็บความคืบหน้าระหว่างเส้นทาง ปัญหาก็คือ คุกกี้ของบุคคลที่สามจะถูกส่งไปยังเว็บไซต์แพตช์ฟักทองในเว็บไซต์เดียวกันกับที่ใช้ในเว็บไซต์ทริกออร์ทรีต ฉันไม่ต้องการติดตามผู้ใช้ระหว่างเว็บไซต์ แต่เบราว์เซอร์ใช้เพียงโหลคุกกี้เดียว ดังนั้นฉันจะแยกการใช้งานนี้ไม่ได้

คุกกี้ข้ามเว็บไซต์ที่มี SameSite=None ยังคงทั้งหมดไปยังโหลคุกกี้ที่แชร์

ซึ่งเป็นที่มาของข้อเสนอคุกกี้ที่มีรัฐที่แบ่งพาร์ติชันอิสระหรือ CHIPS เว็บไซต์ระดับบนสุดจะมีโหลคุกกี้แยกและแบ่งพาร์ติชันแยกกันคนละโหล เว็บไซต์ต่างๆ จะเลือกใช้ตัวเลือกดังกล่าวโดยใช้แอตทริบิวต์ Partitioned ในคุกกี้ของตนได้

Set-Cookie: __Host-route=123;
  SameSite=None;
  Secure;
  Path=/;
  Partitioned;
แอตทริบิวต์ที่แบ่งพาร์ติชันในคุกกี้จะสร้างไหคุกกี้แยกกันตามเว็บไซต์ระดับบนสุด

แทนที่จะต้องแชร์โหลคุกกี้นี้ ทุกคนกลับได้รับเป็นของตัวเอง เรียบง่ายขึ้น ปลอดภัยขึ้น และถูกสุขอนามัยมากขึ้น

เราเพิ่งส่ง Intent to Ship สำหรับคุกกี้ที่มี Independent Partitioned State (CHIPS) ใน Chrome 109 ซึ่งหมายความว่าคุกกี้จะพร้อมให้ทดสอบในเวอร์ชันเบต้าในเดือนธันวาคมและพร้อมพร้อมใช้งานเวอร์ชันเสถียรในเดือนมกราคม 2023 ดังนั้นหากคุณกำลังมองหาวิธีแก้ปัญหาในปีใหม่เพื่อปรับปรุงสูตรคุกกี้ของเว็บไซต์ ลองดูว่าคุณจะเริ่มโรย CHIPS ลงในคุกกี้ข้ามเว็บไซต์เหล่านั้นได้หรือไม่

การเชิญคุกกี้เข้าร่วมปาร์ตี้ด้วยชุดโดเมนของบุคคลที่หนึ่ง

ในส่วนของความคิดเห็นของนักพัฒนาแอป พวกคุณหลายคนช่วยอธิบายให้ชัดเจนว่ามีสถานการณ์ที่คุณแชร์บริการในเว็บไซต์ต่างๆ ที่คุณควบคุมอยู่และต้องการใช้คุกกี้ในเว็บไซต์เหล่านั้น แต่ไม่อนุญาตให้ส่งไปในบริบทของบุคคลที่สามที่แท้จริง ตัวอย่างเช่น คุณอาจมี pretty-pumpkins.com และ pretty-pumpkins.co.uk คุณอาจมีระบบการลงชื่อเพียงครั้งเดียวที่ใช้คุกกี้ ที่ทำงานข้ามเว็บไซต์เหล่านี้ได้ CHIPS จะใช้ไม่ได้เพราะฉันต้องลงชื่อเข้าใช้ทั้ง 2 เว็บไซต์ ข้อกำหนดคือฉันต้องใช้คุกกี้เดียวกันในเว็บไซต์ที่เกี่ยวข้องเหล่านี้

เรากําลังดําเนินการกับข้อเสนอชุดโดเมนของบุคคลที่หนึ่งเพื่อพยายามทําให้เรื่องนี้เป็นไปได้ เราผ่านช่วงทดลองใช้จากต้นทาง 1 จุด และมีการพูดคุยแลกเปลี่ยนความคิดเห็นกันมากมายในชุมชน ซึ่งนำมาสู่เวอร์ชันล่าสุดซึ่งมีจุดประสงค์ดังนี้

  • องค์กรมีวิธีกำหนดกลุ่มเว็บไซต์ที่ควรอยู่ฝ่ายเดียวกัน
  • ใช้ประโยชน์จาก Storage Access API เพื่อขอสิทธิ์เข้าถึงคุกกี้ข้ามเว็บไซต์ภายในชุดบุคคลที่หนึ่งนั้น
ชุดโดเมนของบุคคลที่หนึ่งอนุญาตให้ใช้โหลคุกกี้ที่แชร์ระหว่างเว็บไซต์ที่เกี่ยวข้องเท่านั้น

คุกกี้เหล่านี้ทั้งหมดยังคงอบอยู่ในเตา แต่คุณอ่านคู่มือนักพัฒนาซอฟต์แวร์เกี่ยวกับชุดโดเมนของบุคคลที่หนึ่งซึ่งมีรายการอื่นๆ ให้ทดสอบได้ หรือจะข้ามไปดูข้อเสนอ WICG/ชุดของบุคคลที่หนึ่ง หากต้องการมีส่วนร่วมในการสนทนาก็ได้

อย่าปล่อยให้คุกกี้ไม่มีอัปเดต

เป้าหมายของเราคือการเริ่มยกเลิกการรองรับคุกกี้ของบุคคลที่สามใน Chrome ตั้งแต่ช่วงกลางถึงปี 2024 เรามีเวลาเตรียมตัว แต่คุณควรเริ่มวางแผนตั้งแต่ตอนนี้

  1. ตรวจสอบโค้ดเพื่อหาคุกกี้ด้วย SameSite=None ซึ่งเป็นคุกกี้ที่ต้องมีการอัปเดต
  2. หากคุณไม่มีคุกกี้ของบุคคลที่สาม ให้ตรวจสอบว่าคุกกี้ของเว็บไซต์เดียวกันใช้สูตรคุกกี้ของบุคคลที่หนึ่งที่ดีที่สุด
  3. หากใช้คุกกี้เหล่านั้นในบริบทที่ฝังไว้อย่างสมบูรณ์ ให้ตรวจสอบและทดสอบข้อเสนอชิป
  4. หากคุณต้องการใช้คุกกี้เหล่านั้นในหลายเว็บไซต์ซึ่งรวมกันเป็นกลุ่มเดียว ให้ตรวจสอบข้อเสนอชุดโดเมนของบุคคลที่หนึ่ง
  5. หากตัวเลือกใดตัวเลือกหนึ่งไม่ครอบคลุม คุณจะต้องตรวจสอบข้อเสนอ Privacy Sandbox อื่นๆ ที่เราพัฒนา API ที่สร้างขึ้นมาเพื่อ Use Case แต่ละรายการที่ไม่ได้ใช้การติดตามข้ามเว็บไซต์

ทั้งหมดนี้เป็นเพียงภาพรวมสั้นๆ และเราจะแชร์ข่าวสารและคำแนะนำเพิ่มเติมต่อไป เมื่องานมีความคืบหน้า หากคุณมีคำถาม ปัญหา หรือต้องการแชร์ผลงานผลงานของคุณ เรามีช่องทางมากมายที่ให้คุณติดต่อได้

ดังนั้นอย่าลืมว่า คุกกี้ก็อร่อยดี แต่ให้ทีละน้อยและอย่าพยายามขโมยของใครทั้งนั้น