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