คุกกี้ของบุคคลที่สามมีประโยชน์หลายอย่าง แต่ก็เป็นปัจจัยสําคัญในการเปิดใช้การติดตามข้ามเว็บไซต์ด้วย
Chrome เสนอประสบการณ์การใช้งานแบบใหม่สำหรับตัวเลือกของผู้ใช้ด้วยคุกกี้ของบุคคลที่สาม คุณต้องเตรียมเว็บไซต์ให้พร้อมสําหรับผู้ใช้ที่เลือกท่องเว็บโดยไม่มีคุกกี้ของบุคคลที่สาม
ในหน้านี้ คุณจะเห็นข้อมูลเกี่ยวกับโซลูชันการรักษาความเป็นส่วนตัวสำหรับสถานการณ์แบบฝังซึ่งเดิมใช้คุกกี้ของบุคคลที่สาม และกลยุทธ์ที่จะช่วยคุณเลือกโซลูชันที่เหมาะกับความต้องการมากที่สุด
บริการที่ฝังหรือชิ้นงานฝัง ได้แก่ เนื้อหาของบุคคลที่สาม (เช่น วิดีโอ แผนที่) คอมโพเนนต์แบบอินเทอร์แอกทีฟ (เช่น แชท ระบบการแสดงความคิดเห็น หรือบริการการชำระเงิน) บริการเข้าสู่ระบบ และอื่นๆ
งานส่วนใหญ่ในการเปลี่ยนจากคุกกี้ของบุคคลที่สามจะต้องดำเนินการโดยนักพัฒนาแอปที่ฝังเนื้อหา ไม่ใช่เว็บไซต์ที่โฮสต์การฝัง คู่มือนี้จะกล่าวถึงโซลูชันสําหรับนักพัฒนาซอฟต์แวร์ที่สร้างบริการที่ฝังเป็นหลัก
หากเว็บไซต์ของคุณใช้การฝังที่ใช้คุกกี้ของบุคคลที่สาม โปรดตรวจสอบและทดสอบเส้นทางที่เกี่ยวข้องกับการฝัง และติดต่อผู้ให้บริการการฝังหากพบปัญหา
ตรวจสอบและทดสอบเส้นทางของผู้ใช้ที่เกี่ยวข้องกับการฝัง
วิธีที่ดีที่สุดในการระบุว่าการฝังได้รับผลกระทบจากคุกกี้ของบุคคลที่สามหรือไม่คือการทดสอบการฝังของบุคคลที่สามโดยเปิดใช้ Flag การทดสอบคุกกี้ของบุคคลที่สาม
เมื่อจํากัดคุกกี้ของบุคคลที่สามแล้ว ให้ทดสอบสถานการณ์การฝังทั่วไปต่อไปนี้
- วิดเจ็ต Chat: คุณเริ่มเซสชันการแชทได้ไหม คุณรีเฟรชหน้าเว็บโดยไม่สูญเสียเซสชันได้ไหม คุณไปยังหน้าอื่นๆ และรักษาเซสชันไว้ได้ไหม
- เนื้อหาที่ฝัง: คุณดูเนื้อหาวิดีโอหรือเนื้อหาอื่นๆ ที่ฝังไว้ได้ไหม ระบบจะเก็บค่ากำหนดของผู้ใช้ เช่น ภาษาหรือคำบรรยาย ไว้ไหม คุณเห็นโฆษณาเมื่อคาดว่าจะเห็นไหม เช่น ไม่เห็นโฆษณาในฐานะสมาชิกพรีเมียม
- การเข้าสู่ระบบ: การเข้าสู่ระบบ รวมถึงการเข้าสู่ระบบแบบลงชื่อเพียงครั้งเดียว (SSO) ใช้งานได้กับชิ้นงานที่รองรับหรือไม่ ข้อมูลดังกล่าวยังคงอยู่ไหมเมื่อมีการโหลดหน้าเว็บซ้ำและไปยังหน้าเว็บที่ใช้การฝังเดียวกัน
- วิดเจ็ตการแสดงความคิดเห็น: คุณแสดงความคิดเห็น กดชอบ และกดโหวตความคิดเห็นได้ไหม
- โซลูชันการชำระเงินแบบฝัง: คุณชำระเงินเสร็จสมบูรณ์ได้ไหม
ในส่วนถัดไป คุณจะเห็นข้อมูลที่เฉพาะเจาะจงมากขึ้นเกี่ยวกับผลกระทบที่อาจเกิดขึ้นกับขั้นตอนเหล่านั้น
กรณีการใช้งานทั่วไป
มี API หลายรายการที่สามารถใช้สำหรับการฝังซึ่งเดิมใช้คุกกี้ของบุคคลที่สาม ตารางต่อไปนี้แสดงเวิร์กโฟลว์ทั่วไปและ API ที่แนะนําให้ใช้เป็นข้อมูลสรุประดับสูง ส่วนต่อไปนี้จะอธิบายเหตุผลของคําแนะนําเหล่านี้
กรณีการใช้งาน | API ที่แนะนําสําหรับการใช้คุกกี้ของบุคคลที่สาม |
---|---|
วิดเจ็ต Chat | CHIPS |
การฝังแผนที่ | CHIPS |
โดเมนแซนด์บ็อกซ์สําหรับเนื้อหาของผู้ใช้ที่ไม่น่าเชื่อถือ (เช่น googleusercontent.com และ githubusercontent.com) ที่จําเป็นต้องกําหนดขอบเขตระดับรัฐต่อผู้เผยแพร่โฆษณา |
CHIPS |
โฆษณาที่ฝังซึ่งจําเป็นต้องกําหนดขอบเขตระดับรัฐตามผู้เผยแพร่โฆษณา | CHIPS |
เข้าสู่ระบบผ่านผู้ให้บริการข้อมูลประจำตัว | FedCM |
ฝังที่โฮสต์ในต้นทางที่แตกต่างกันแต่เกี่ยวข้องกัน | Storage Access API ที่มีชุดเว็บไซต์ที่เกี่ยวข้อง |
เนื้อหาที่ฝังไว้โดยค่ากําหนดตามการเข้าสู่ระบบ (เช่น เนื้อหาวิดีโอที่ไม่มีโฆษณา หรือค่ากําหนดภาษา/คำบรรยาย) |
Storage Access API |
วิดเจ็ตการแสดงความคิดเห็นของโซเชียลมีเดียที่ต้องเข้าสู่ระบบ | Storage Access API |
การเลือก API ที่จะใช้สําหรับกรณีการใช้งานของบุคคลที่สามที่ฝัง
ส่วนนี้จะอธิบายวิธีเลือก API อื่นที่เหมาะสมและอธิบาย API ที่แนะนํา
แผนภาพต่อไปนี้จะช่วยคุณเลือกจากตัวเลือกที่มี
แผนภาพแสดงขั้นตอนจะถามคำถามหลัก 3 ข้อ และเราจะดูคำถามเหล่านั้นอย่างละเอียด รวมถึงเหตุผลที่แนะนำให้ใช้ API หนึ่งๆ ในแต่ละกรณี
1. คุกกี้มีไว้สำหรับเว็บไซต์ที่ฝังโดยเฉพาะใช่ไหม
มีการฝังของบุคคลที่สามจำนวนมากในเว็บไซต์ที่ไม่เกี่ยวข้องกันโดยสิ้นเชิง ตัวอย่างเช่น วิดเจ็ตแชทสำหรับฝ่ายสนับสนุนลูกค้ามักต้องใช้คุกกี้จึงจะทำงานได้ แต่ไม่จำเป็นต้องแชร์คุกกี้เหล่านี้ระหว่างองค์กร 2 แห่งที่แตกต่างกันโดยสิ้นเชิงซึ่งบังเอิญใช้โซลูชันวิดเจ็ตแชทเดียวกัน อันที่จริงแล้ว การตั้งค่าควรเป็นไม่อนุญาตให้แชร์คุกกี้ในหลายกรณีเหล่านี้
หากคุณให้บริการฝังของบุคคลที่สามแก่เว็บไซต์อื่นๆ และบริการดังกล่าวใช้คุกกี้ ให้พิจารณาว่าคุกกี้เหล่านั้นมีไว้สำหรับบริการในเว็บไซต์ที่ฝังหรือไม่ มีการแชร์ข้อมูลดังกล่าวโดยอินสแตนซ์ของการฝังของคุณในเว็บไซต์อื่นๆ ไหม
หากไม่จําเป็นต้องแชร์คุกกี้ การแบ่งพาร์ติชันคุกกี้โดยใช้ CHIPS เป็นตัวเลือกที่ง่ายที่สุด API นี้จะเชื่อมโยงคุกกี้ของบุคคลที่สามกับเว็บไซต์ระดับบนสุด แทนที่จะอนุญาตให้เว็บไซต์ทั้งหมดที่ใช้การฝังของบุคคลที่สามเดียวกันแชร์คุกกี้ดังกล่าว CHIPS ติดตั้งใช้งานได้ง่าย เพียงเพิ่มแอตทริบิวต์ Partitioned
เพิ่มเติมลงในคุกกี้ที่มีอยู่ ซึ่งจะช่วยให้บริการที่ฝังอยู่ยังคงบันทึกสถานะได้ แต่จะนําพื้นที่เก็บข้อมูลข้ามเว็บไซต์ที่แชร์ออกซึ่งอาจทําให้เกิดการติดตามข้ามเว็บไซต์
นอกจากนี้ เว็บไซต์ควรตรวจสอบด้วยว่าคุกกี้มีการใช้เพื่อเหตุผลที่เหมาะสมหรือไม่ คุณควรใช้คุกกี้เฉพาะเมื่อมีการกําหนดหรือต้องส่งไปกับคําขอ HTTP เท่านั้น หากไม่ใช่กรณีนี้และคุกกี้ใช้เป็นเพียงตัวเลือกพื้นที่เก็บข้อมูลที่สะดวกเท่านั้น คุณควรพิจารณาใช้ Storage API ต่างๆ แทน ซึ่งจะเก็บข้อมูลไว้ในเครื่องเมื่อไม่จำเป็นต้องส่ง Storage API มีการแบ่งพาร์ติชันแล้วในเบราว์เซอร์หลักทั้งหมด ในลักษณะเดียวกับที่ CHIPS แบ่งพาร์ติชันคุกกี้
2. คุกกี้ดังกล่าวเป็นของผู้ให้บริการข้อมูลประจำตัวบุคคลที่สามหรือไม่
การใช้คุกกี้ของบุคคลที่สามที่พบบ่อยอย่างหนึ่งในการฝังคือเพื่อมอบความสามารถในการเข้าสู่ระบบที่จัดการโดยผู้ให้บริการเข้าสู่ระบบบุคคลที่สาม เช่น ลงชื่อเข้าใช้ด้วย Google ในกรณีนี้ คุกกี้ที่แบ่งพาร์ติชันจะใช้ไม่ได้
Federated Credential Management (FedCM) เป็น API สําหรับกรณีการใช้งานนี้โดยเฉพาะและทํางานได้โดยไม่ต้องใช้คุกกี้ของบุคคลที่สาม หากผู้ให้บริการข้อมูลประจำตัวรองรับ FedCM ก็อาจไม่จำเป็นต้องใช้คุกกี้ของบุคคลที่สาม
อ่านเพิ่มเติมเกี่ยวกับการแก้ไขผลกระทบของคุกกี้ของบุคคลที่สามในเวิร์กโฟลว์การเข้าสู่ระบบได้ในคำแนะนำเกี่ยวกับข้อมูลประจำตัว
3. คุกกี้ใช้กับเว็บไซต์ที่เกี่ยวข้องเพียงไม่กี่แห่งหรือไม่
หากไม่มีตัวเลือกใดก่อนหน้านี้ที่เหมาะที่จะแทนที่คุกกี้ คุณจะต้องพิจารณาเปิดใช้การเข้าถึงคุกกี้ของบุคคลที่สามอีกครั้งสําหรับการฝัง ซึ่งสามารถเปิดใช้ใน Use Case ที่ควบคุมได้โดยเฉพาะด้วย Storage Access API API นี้จะเปิดใช้สิทธิ์เข้าถึงคุกกี้ของบุคคลที่สามอย่างเต็มรูปแบบอีกครั้ง (ขึ้นอยู่กับการควบคุม) จึงถือเป็นตัวเลือกที่มีประสิทธิภาพสูงสุด ด้วยเหตุนี้ เราจึงขอแนะนำให้หลีกเลี่ยงการใช้แอตทริบิวต์นี้หากมีทางเลือกอื่นที่เข้มงวดกว่าเพียงพอแล้ว
การใช้ Storage Access API มีข้อกำหนดบางอย่าง ดังนี้
- ผู้ใช้ต้องเคยเข้าชมเว็บไซต์ของชิ้นงานแบบฝังที่ระดับบนสุดก่อนหน้านี้ เช่น หากฝังระบบการเขียนความคิดเห็น ผู้ใช้จะต้องไปที่เว็บไซต์ของระบบการเขียนความคิดเห็นนั้นด้วย
- ผู้ใช้ต้องโต้ตอบกับเนื้อหาที่ฝังก่อนจึงจะแชร์คุกกี้ได้ ซึ่งหมายความว่าระบบอาจโหลดเนื้อหาที่ฝังไว้ทั้งหมดก่อนการโต้ตอบของผู้ใช้ไม่ได้
- ผู้ใช้อาจต้องอนุมัติการแชร์คุกกี้ด้วยป๊อปอัปของเบราว์เซอร์ โดยเฉพาะอย่างยิ่งในการใช้งานครั้งแรกและตามช่วงเวลาหลังจากนั้น
- เว็บไซต์ที่ฝังอาจต้องตั้งค่าแอตทริบิวต์แซนด์บ็อกซ์เพิ่มเติมด้วย
ข้อจํากัดเหล่านี้ช่วยให้มั่นใจได้ว่าการดําเนินการที่มีประสิทธิภาพของการเปิดใช้คุกกี้ของบุคคลที่สามอีกครั้งจะเกิดขึ้นเมื่อผู้ใช้และเว็บไซต์คาดหวังเท่านั้น อย่างไรก็ตาม ในบางสถานการณ์ ระบบอาจข้ามการดําเนินการของผู้ใช้ เช่น หากผู้ใช้เพิ่งให้สิทธิ์เข้าถึงไปเมื่อไม่นานนี้ ก็อาจไม่จำเป็นต้องแจ้งให้ผู้ใช้ดำเนินการอีกครั้งเป็นระยะเวลาหนึ่ง (ตามที่เบราว์เซอร์กำหนด)
อีกสถานการณ์หนึ่งที่ผู้ใช้อาจคาดหวังให้แสดงข้อความนี้ขึ้นมาคือเว็บไซต์ที่เกี่ยวข้อง ตัวอย่างเช่น บางองค์กรใช้แหล่งที่มาหลายแห่ง ซึ่งเบราว์เซอร์จะถือว่าข้ามเว็บไซต์ ดังนั้นการใช้คุกกี้ในแหล่งที่มาเหล่านี้จึงถือเป็นของบุคคลที่สาม ตัวอย่างเช่น แบรนด์ที่มีเว็บไซต์เฉพาะประเทศ (เช่น example.com และ example.co.uk) หรือเว็บไซต์เฉพาะแบรนด์ (เช่น example.car และ example.house)
ในกรณีนี้ซึ่งมีเว็บไซต์ที่เกี่ยวข้องเพียงไม่กี่แห่ง คุณสามารถใช้ชุดเว็บไซต์ที่เกี่ยวข้อง ระบบจะส่งเว็บไซต์ไปยัง Chrome เพื่อให้ Chrome ทราบว่าเว็บไซต์ดังกล่าวมีความเกี่ยวข้องกัน วิธีนี้ช่วยให้เข้าถึง Storage Access API ได้ง่ายขึ้นสำหรับผู้ใช้ โดยมีข้อความแจ้งให้ผู้ใช้ดำเนินการน้อยลง
สําหรับเว็บไซต์ที่ไม่เกี่ยวข้องซึ่งจริงๆ แล้วเป็นบุคคลที่สาม และจําเป็นต้องใช้สิทธิ์เข้าถึงคุกกี้ของบุคคลที่สามอย่างเต็มรูปแบบเนื่องจาก API ทางเลือกไม่เพียงพอ การใช้ Storage Access API จะขึ้นอยู่กับข้อกําหนดและข้อความแจ้งทั้งหมด
การเปรียบเทียบ API ต่างๆ
โซลูชันแต่ละรายการมีลักษณะและข้อจํากัดแตกต่างกันเล็กน้อย ซึ่งทําให้เหมาะสําหรับบาง Use Case มากกว่า ตารางต่อไปนี้สรุปความแตกต่างหลักๆ
CHIPS | พื้นที่เก็บข้อมูลที่แบ่งพาร์ติชัน | FedCM | Storage Access API ที่มีชุดเว็บไซต์ที่เกี่ยวข้อง | Storage Access API | |
---|---|---|---|---|---|
ผู้ใช้ไม่จำเป็นต้องเข้าถึงบุคคลที่ฝังไว้ในฐานะเว็บไซต์ระดับบนสุดมาก่อน | |||||
ไม่ต้องแสดงข้อความแจ้งให้ผู้ใช้อนุมัติการเข้าถึง | |||||
ไม่ต้องให้ผู้ใช้โต้ตอบกับการฝัง | (อาจเป็นจริงสําหรับเว็บไซต์ที่ฝังซึ่งมีสิทธิ์เข้าถึงระดับบนสุดด้วย) |
||||
ความยากในการติดตั้งใช้งาน | ต่ำมาก | ต่ำ | สูง | ปานกลาง | ปานกลาง |
ใช้เพื่อแชร์คุกกี้ในเว็บไซต์/ต้นทางระดับบนสุดหลายแห่งได้ | (ข้อเสนออยู่ระหว่างการหารือ) |
||||
ใช้ได้ในเบราว์เซอร์ที่ไม่ใช่ Chromium | (ใช้ Storage Access API แทน) |
รองรับกรณีการใช้งานในเบราว์เซอร์ต่างๆ
ความเข้ากันได้ของเบราว์เซอร์เป็นหนึ่งในปัจจัยหลักในการพิจารณาโซลูชัน ดังที่กล่าวไว้ในบรรทัดสุดท้ายของตาราง API บางรายการ (CHIPS, FedCM, ชุดเว็บไซต์ที่เกี่ยวข้อง) มีให้บริการในเบราว์เซอร์ Chromium เท่านั้น ปัจจุบันมีโซลูชันข้ามเบราว์เซอร์เพียง 2 รายการเท่านั้น ได้แก่ Storage API แบบแบ่งพาร์ติชัน (เมื่อไม่จําเป็นต้องใช้คุกกี้) หรือ Storage Access API (เมื่อจําเป็นต้องใช้คุกกี้)
อย่างไรก็ตาม ตามที่ได้กล่าวไว้ก่อนหน้านี้ Storage Access API มีข้อจํากัดหลายประการที่อาจส่งผลต่อประสบการณ์ของผู้ใช้บนเว็บไซต์ ทีม Chrome ได้ดำเนินการเพิ่ม API อื่นๆ ซึ่งออกแบบมาเพื่อตอบสนอง Use Case ที่เฉพาะเจาะจงและมอบประสบการณ์การใช้งานที่คล้ายกับคุกกี้ของบุคคลที่สาม ดังนั้น เราขอแนะนำให้พิจารณาตัวเลือกที่ดีที่สุดและถือว่าการปรับปรุงเหล่านี้เป็นการปรับปรุงแบบค่อยเป็นค่อยไป โดยจะใช้ Storage Access API เป็นทางเลือกสำรองสำหรับเบราว์เซอร์ที่ไม่รองรับ
เนื่องจากคุกกี้อาจถูกบล็อกด้วยเหตุผลหลายประการ (เช่น การตั้งค่าเบราว์เซอร์ ชิ้นงาน) การตรวจหาฟีเจอร์ของการสนับสนุน API จึงอาจไม่เพียงพอ แต่ควรทดสอบว่าคุกกี้ที่คาดไว้มีอยู่หรือไม่ และหากไม่ ให้กลับไปใช้เวิร์กโฟลว์ Storage Access API เพื่อขอสิทธิ์เข้าถึงคุกกี้ของบุคคลที่สาม
ลงมือดำเนินการเลย
หากการฝังของบุคคลที่สามไม่ทำงานอีกต่อไปหากไม่มีการใช้คุกกี้ของบุคคลที่สาม เรามีโซลูชันหลายรายการที่จัดการกับผลกระทบที่อาจเกิดขึ้นดังที่อธิบายไว้ในบทสนทนานี้ ตรวจสอบบริการเพื่อหาคุกกี้ของบุคคลที่สามเลย
สําหรับผู้ที่พบปัญหาเกี่ยวกับการฝังในขณะนี้เนื่องจากChrome กําลังทดสอบการนำคุกกี้ของบุคคลที่สามออก เรามีตัวเลือกระยะสั้นหลายรายการที่จะช่วยคุณในระหว่างที่ย้ายข้อมูลไปยังทางเลือกที่อธิบายไว้ในโพสต์นี้ ดูข้อมูลเพิ่มเติมได้ในเอกสารประกอบเกี่ยวกับการคงประสบการณ์การใช้งานที่สำคัญของผู้ใช้ไว้
หากมีข้อสงสัยเกี่ยวกับกรณีการใช้งานการฝังของบุคคลที่สามที่ไม่ได้กล่าวถึงในคู่มือนี้ คุณสามารถแจ้งปัญหาใหม่โดยใช้แท็ก "การเลิกใช้งานคุกกี้ของบุคคลที่สาม" ในที่เก็บข้อมูลการสนับสนุนนักพัฒนาซอฟต์แวร์