คำแนะนำนี้จะช่วยให้คุณเข้าใจการเปลี่ยนแปลงเว็บแอปพลิเคชันของคุณที่เผยแพร่โดย Federated Credentials Management API (FedCM)
เมื่อเปิดใช้ FedCM เบราว์เซอร์จะแสดงข้อความแจ้งของผู้ใช้และจะไม่มีการใช้คุกกี้ของบุคคลที่สาม
ภาพรวม
Privacy Sandbox สำหรับเว็บและการนําคุกกี้ของบุคคลที่สามออกจากเว็บของ Chrome จะทำให้เกิดการเปลี่ยนแปลงที่สำคัญในบริการ Google Identity และการลงชื่อเข้าใช้ของผู้ใช้
FedCM ช่วยให้มีขั้นตอนการลงชื่อเข้าใช้ที่เป็นส่วนตัวมากขึ้นโดยไม่ต้องใช้คุกกี้ของบุคคลที่สาม เบราว์เซอร์จะควบคุมการตั้งค่าของผู้ใช้ แสดงข้อความแจ้งของผู้ใช้ และรายชื่อติดต่อเฉพาะผู้ให้บริการข้อมูลประจำตัว เช่น Google หลังจากได้รับความยินยอมจากผู้ใช้อย่างชัดแจ้ง
สำหรับเว็บไซต์ส่วนใหญ่ การย้ายข้อมูลจะเกิดขึ้นอย่างราบรื่นผ่านการอัปเดตที่เข้ากันได้แบบย้อนหลังไปยังไลบรารี JavaScript ของ Google Identity Services JavaScript
ข้อมูลอัปเดตเกี่ยวกับฟีเจอร์ลงชื่อเข้าใช้อัตโนมัติ
Federated Credential Management (FedCM) เบต้า สำหรับบริการ Google Identity เปิดตัวแล้วเมื่อเดือนสิงหาคม 2023 นักพัฒนาซอฟต์แวร์จำนวนมากได้ทดสอบ API และได้ให้ ความคิดเห็นที่เป็นประโยชน์
คำตอบหนึ่งที่ Google ได้ยินจากนักพัฒนาซอฟต์แวร์คือเกี่ยวกับข้อกำหนดท่าทางสัมผัสของผู้ใช้ในขั้นตอนการลงชื่อเข้าใช้อัตโนมัติของ FedCM เพื่อความเป็นส่วนตัวที่ดีขึ้น Chrome กำหนดให้ผู้ใช้ยืนยันอีกครั้งว่าต้องการลงชื่อเข้าใช้เว็บไซต์ด้วยบัญชี Google ในอินสแตนซ์ของ Chrome แต่ละรายการ แม้ว่าผู้ใช้จะอนุมัติเว็บไซต์ก่อนการเปิดตัว FedCM ก็ตาม คุณจะยืนยันอีกครั้งแบบครั้งเดียวนี้ได้ผ่านการคลิกข้อความแจ้งของ One Tap ในคลิกเดียวเพื่อแสดงความตั้งใจของผู้ใช้ในการลงชื่อเข้าใช้ การเปลี่ยนแปลงนี้อาจทำให้อัตรา Conversion การลงชื่อเข้าใช้อัตโนมัติของบางเว็บไซต์หยุดชะงัก
เมื่อเร็วๆ นี้ Chrome ได้เปลี่ยนแปลงรูปแบบ UX การลงชื่อเข้าใช้อัตโนมัติของ FedCM ไปเมื่อเร็วๆ นี้ ระบบจะต้องยืนยันอีกครั้งเมื่อมีการจํากัดคุกกี้ของบุคคลที่สามเท่านั้น ซึ่งแปลว่า
ก่อนที่การจำกัดคุกกี้ของบุคคลที่สามจะเพิ่มขึ้นถึง 100% ในไตรมาสที่ 3 ปี 2024 การลงชื่อเข้าใช้อัตโนมัติของ FedCM ไม่จำเป็นต้องยืนยันผู้ใช้ที่กลับมาอีกครั้ง หากผู้ใช้ยืนยันอีกครั้งกับ UI ของ FedCM การยืนยันอีกครั้งนี้จะนับรวมในข้อกำหนดท่าทางสัมผัสของผู้ใช้สำหรับยุคหลังยุค 3PCD
การลงชื่อเข้าใช้โดยอัตโนมัติจาก FedCM จะตรวจสอบสถานะการยืนยันอีกครั้งเมื่อผู้ใช้จำกัดคุกกี้ของบุคคลที่สามด้วยตนเองในวันนี้ หรือโดยค่าเริ่มต้นใน Chrome ในอนาคต
จากการเปลี่ยนแปลงนี้ เราขอแนะนำให้นักพัฒนาซอฟต์แวร์ที่ลงชื่อเข้าใช้โดยอัตโนมัติทุกรายย้ายข้อมูลไปยัง FedCM โดยเร็วที่สุด เพื่อลดการหยุดชะงักของอัตรา Conversion การลงชื่อเข้าใช้โดยอัตโนมัติ
สำหรับขั้นตอนการลงชื่อเข้าใช้อัตโนมัติ GIS JavaScript จะไม่เรียกใช้ FedCM ใน Chrome รุ่นเก่า (ก่อน M121) แม้ว่าเว็บไซต์ของคุณจะเลือกใช้ FedCM ก็ตาม
ความแตกต่างในเส้นทางของผู้ใช้
ประสบการณ์การใช้งาน One Tap ที่ใช้ FedCM และไม่มี FedCM จะคล้ายคลึงกันแต่มีความแตกต่างเล็กน้อยเท่านั้น
ผู้ใช้ใหม่เซสชันเดียว
เมื่อใช้ FedCM แล้ว One Tap จะแสดงชื่อโดเมนแทนชื่อแอปพลิเคชัน
การใช้ FedCM | ไม่มี FedCM |
---|---|
|
|
ผู้ใช้ที่กลับมาเซสชันเดียว (โดยปิดการลงชื่อเข้าใช้โดยอัตโนมัติไว้)
เมื่อใช้ FedCM แล้ว One Tap จะแสดงชื่อโดเมนแทนชื่อแอปพลิเคชัน
การใช้ FedCM | ไม่มี FedCM |
---|---|
|
|
ผู้ใช้ที่กลับมาเซสชันเดียว (ที่เปิดใช้การลงชื่อเข้าใช้อัตโนมัติ)
เมื่อใช้ FedCM ผู้ใช้สามารถคลิก X เพื่อยกเลิกการลงชื่อเข้าใช้อัตโนมัติภายใน 5 วินาทีแทนที่จะคลิกปุ่มยกเลิก
การใช้ FedCM | ไม่มี FedCM |
---|---|
|
|
หลายเซสชัน
เมื่อใช้ FedCM แล้ว One Tap จะแสดงชื่อโดเมนแทนชื่อแอปพลิเคชัน
การใช้ FedCM | ไม่มี FedCM |
---|---|
|
|
ก่อนเริ่มต้น
ตรวจสอบว่าการตั้งค่าเบราว์เซอร์และเวอร์ชันรองรับ FedCM API เราขอแนะนำให้คุณอัปเดตเป็นเวอร์ชันล่าสุด
FedCM API พร้อมใช้งานใน Chrome 117 ขึ้นไป
การตั้งค่าการลงชื่อเข้าใช้ของบุคคลที่สามเปิดใช้ใน Chrome
หากเบราว์เซอร์ Chrome ของคุณเป็นเวอร์ชัน 119 หรือเก่ากว่า ให้เปิด
chrome://flags
แล้วเปิดใช้ฟีเจอร์FedCmWithoutThirdPartyCookies
เวอร์ชันทดลอง ขั้นตอนนี้ไม่จำเป็นสำหรับเบราว์เซอร์ Chrome เวอร์ชัน 120 ขึ้นไป
ย้ายข้อมูลเว็บแอป
ทำตามขั้นตอนต่อไปนี้เพื่อเปิดใช้งาน FedCM ประเมินผลกระทบในการย้ายข้อมูลที่อาจเกิดขึ้น และหากจำเป็นเพื่อเปลี่ยนแปลงเว็บแอปพลิเคชันที่มีอยู่
1. เพิ่มธงบูลีนเพื่อเปิดใช้ FedCM เมื่อเริ่มต้นโดยใช้:
HTML ให้ตั้งค่าแอตทริบิวต์
data-use_fedcm_for_prompt
เป็นtrue
JavaScript ให้ตั้งค่า
use_fedcm_for_prompt
เป็นtrue
ในออบเจ็กต์IdConfiguration
2. นำการใช้เมธอด isDisplayMoment()
, isDisplayed()
, isNotDisplayed()
และ getNotDisplayedReason()
ในโค้ดของคุณออก
โค้ดเรียกกลับของ google.accounts.id.prompt
จะไม่แสดงการแจ้งเตือนช่วงเวลาที่แสดงในออบเจ็กต์ PromptMomentNotication
อีกต่อไป เพื่อปรับปรุงความเป็นส่วนตัวของผู้ใช้ นำโค้ดที่ขึ้นอยู่กับวิธีการที่เกี่ยวข้องกับช่วงเวลาที่แสดงออก ซึ่งได้แก่ isDisplayMoment()
, isDisplayed()
, isNotDisplayed()
และ getNotDisplayedReason()
เมธอด
3. ยกเลิกการใช้เมธอด getSkippedReason()
ในโค้ดของคุณ
ขณะที่ช่วงเวลาการข้าม isSkippedMoment()
จะยังคงถูกเรียกจากโค้ดเรียกกลับ google.accounts.id.prompt
ในออบเจ็กต์ PromptMomentNotication
และจะไม่แสดงเหตุผลโดยละเอียด นำโค้ดที่ขึ้นอยู่กับเมธอด getSkippedReason()
ออกจากโค้ด
โปรดทราบว่าการแจ้งเตือนช่วงเวลาที่ปิด isDismissedMoment()
และวิธีเหตุผลโดยละเอียดที่เกี่ยวข้อง getDismissedReason()
จะไม่มีการเปลี่ยนแปลงเมื่อเปิดใช้ FedCM
4. นำแอตทริบิวต์รูปแบบ position
ออกจาก data-prompt_parent_id
และ intermediate_iframes
เบราว์เซอร์จะควบคุมขนาดและตำแหน่งของข้อความแจ้งของผู้ใช้ ไม่รองรับตําแหน่งที่กําหนดเองสําหรับ One Tap บนเดสก์ท็อป
5. อัปเดตเลย์เอาต์หน้าเว็บ หากจําเป็น
เบราว์เซอร์จะควบคุมขนาดและตําแหน่งของข้อความแจ้งของผู้ใช้ ระบบไม่รองรับเนื้อหาบางอย่างที่แสดงซ้อนกันเป็นตําแหน่งที่กําหนดเองสําหรับ One Tap บนเดสก์ท็อป ทั้งนี้ขึ้นอยู่กับเลย์เอาต์ของแต่ละหน้า เช่น แอตทริบิวต์สไตล์, data-prompt_parent_id
, intermediate_iframes
, iframe ที่กําหนดเอง และวิธีการสร้างสรรค์อื่นๆ
เปลี่ยนเลย์เอาต์ของหน้าเพื่อปรับปรุงประสบการณ์ของผู้ใช้เมื่อข้อมูลสําคัญถูกบดบัง อย่าสร้าง UX รอบๆ ข้อความแจ้งของ One Tap แม้จะคิดว่าอยู่ในตำแหน่งเริ่มต้นแล้ว เนื่องจาก FedCM API ทำงานเป็นสื่อกลางผ่านเบราว์เซอร์ ผู้ให้บริการเบราว์เซอร์ที่แตกต่างกันอาจวางตำแหน่งของข้อความแจ้งแตกต่างกันเล็กน้อย
6. เพิ่มแอตทริบิวต์ allow="identity-credentials-get"
ลงในเฟรมหลักหากเว็บแอปเรียกใช้ One Tap API จาก iframe แบบข้ามต้นทาง
ระบบจะถือว่า iframe เป็นแบบข้ามต้นทางหาก origin ไม่เหมือนกับต้นทางระดับบนสุด ตัวอย่างเช่น:
- โดเมนที่แตกต่างกัน:
https://example1.com
และhttps://example2.com
- โดเมนระดับบนสุดต่างกัน:
https://example.uk
และhttps://example.jp
โดเมนย่อย:
https://example.com
และhttps://login.example.com
เมื่อมีการเรียกใช้ One Tap API จาก iframe แบบข้ามต้นทาง คุณต้องเพิ่มแอตทริบิวต์
allow="identity-credentials-get"
allow="identity-credentials-get"
ในแท็กiframe
ของเฟรมระดับบนทุกแท็ก เพื่อปรับปรุงความเป็นส่วนตัวของผู้ใช้<iframe src="https://your.cross-origin/onetap.page" allow="identity-credentials-get"></iframe>
หากแอปใช้ iframe ที่มี iframe อื่น คุณต้องตรวจสอบว่ามีการเพิ่มแอตทริบิวต์ลงใน iframe ทุกรายการ รวมถึง iframe ย่อยทั้งหมด
ตัวอย่างเช่น ลองพิจารณาสถานการณ์ต่อไปนี้
เอกสารด้านบน (
https://www.example.uk
) มี iframe ชื่อ "iframe A" ซึ่งฝังหน้า (https://logins.example.com
)หน้าที่ฝังนี้ (
https://logins.example.com
) ยังมี iframe ชื่อ "iframe B" ซึ่งฝังหน้า (https://onetap.example2.com
) ที่โฮสต์ One Tap เพิ่มเติมคุณต้องเพิ่มแอตทริบิวต์ลงในทั้งแท็ก Iframe A และ Iframe B เพื่อให้ "One Tap" แสดงได้อย่างถูกต้อง
เตรียมพร้อมสำหรับการสอบถามที่ข้อความแจ้งของ One Tap ไม่แสดง เว็บไซต์อื่นๆ ที่มีต้นทางแตกต่างกันอาจฝังหน้าที่โฮสต์ One Tap ไว้ใน iframe ของเว็บไซต์นั้น คุณอาจได้รับตั๋วสนับสนุนเพิ่มขึ้นซึ่งเกี่ยวกับ One Tap ไม่แสดงจากผู้ใช้ปลายทางหรือเจ้าของเว็บไซต์คนอื่นๆ แม้ว่าเจ้าของเว็บไซต์จะทำการอัปเดตได้ในหน้าเว็บของตนเท่านั้น แต่คุณทําสิ่งต่อไปนี้เพื่อลดผลกระทบได้
อัปเดตเอกสารสำหรับนักพัฒนาซอฟต์แวร์เพื่อระบุวิธีตั้งค่า iframe ให้เหมาะสมเพื่อเรียกเว็บไซต์ของคุณ คุณสามารถลิงก์ไปยังหน้านี้ได้ในเอกสาร
อัปเดตหน้าคำถามที่พบบ่อยของนักพัฒนาแอป (หากมี)
แจ้งให้ทีมสนับสนุนของคุณทราบการเปลี่ยนแปลงที่กำลังจะเกิดขึ้นและเตรียมตอบคำถามล่วงหน้า
ติดต่อพาร์ทเนอร์ ลูกค้า หรือเจ้าของเว็บไซต์ที่ได้รับผลกระทบในเชิงรุกเพื่อให้มีการเปลี่ยนผ่าน FedCM อย่างราบรื่น
7. เพิ่มคำสั่งเหล่านี้ลงในนโยบายรักษาความปลอดภัยเนื้อหา (CSP)
ขั้นตอนนี้เป็นแบบไม่บังคับเนื่องจากเว็บไซต์บางแห่งเลือกกำหนด CSP ไม่ได้
หากไม่ได้ใช้ CSP ในเว็บไซต์ คุณก็ไม่จำเป็นต้องเปลี่ยนแปลงอะไร
หาก CSP ใช้งานได้กับ One Tap ปัจจุบัน และคุณไม่ได้ใช้
connect-src
,frame-src
,script-src
,style-src
หรือdefault-src
ก็ไม่ต้องทำการเปลี่ยนแปลงใดๆหรือทําตามคําแนะนํานี้เพื่อตั้งค่า CSP หากไม่มีการตั้งค่า CSP ที่เหมาะสม FedCM One Tap ก็จะไม่แสดงในเว็บไซต์
8. นำการรองรับ Accelerated Mobile Pages (AMP) ออกสำหรับการลงชื่อเข้าใช้
การรองรับการลงชื่อเข้าใช้ของผู้ใช้สำหรับ AMP เป็นฟีเจอร์เสริมของ GIS ที่เว็บแอปอาจติดตั้งไว้ ในกรณีนี้
ลบการอ้างอิงถึงรายการต่อไปนี้
amp-onetap-google
องค์ประกอบที่กำหนดเอง และ<script async custom-element="amp-onetap-google" src="https://cdn.ampproject.org/v0/amp-onetap-google-0.1.js"></script>
ลองเปลี่ยนเส้นทางคำขอลงชื่อเข้าใช้จาก AMP ไปยังขั้นตอนการลงชื่อเข้าใช้ HTML ของเว็บไซต์ โปรดทราบว่า
Intermediate Iframe Support API
ที่เกี่ยวข้องจะไม่ได้รับผลกระทบ
ทดสอบและยืนยันการย้ายข้อมูล
หลังจากทำการเปลี่ยนแปลงที่จำเป็นตามขั้นตอนก่อนหน้าแล้ว คุณสามารถยืนยันได้ว่าการย้ายข้อมูลเสร็จสมบูรณ์
ยืนยันว่าเบราว์เซอร์ของคุณรองรับ FedCM และคุณมีเซสชันบัญชี Google อยู่แล้ว
ไปที่หน้าการแตะครั้งเดียวในแอปพลิเคชัน
ยืนยันว่าข้อความแจ้งของ One Tap ปรากฏขึ้นและวางซ้อนเนื้อหาที่เกี่ยวข้องอย่างปลอดภัย
ยืนยันว่าการยืนยันข้อมูลเข้าสู่ระบบที่ถูกต้องกลับไปยังปลายทางหรือวิธีการติดต่อกลับเมื่อลงชื่อเข้าใช้แอปพลิเคชันโดยใช้ One Tap
หากเปิดใช้การลงชื่อเข้าใช้โดยอัตโนมัติอยู่ ให้ตรวจสอบว่าการยกเลิกใช้งานได้และการคืนสินค้าข้อมูลเข้าสู่ระบบที่ถูกต้องไปยังปลายทางหรือวิธีการติดต่อกลับ
ระยะเวลาพักของ One Tap
การคลิก One Tap
ที่มุมบนขวาจะเป็นการปิดข้อความแจ้งและเข้าสู่ระยะเวลาพักซึ่งป้องกันไม่ให้ข้อความแจ้งของ One Tap แสดงชั่วคราว หากต้องการให้ข้อความแจ้งของ One Tap แสดงอีกครั้งก่อนระยะเวลาพักจะสิ้นสุดลง คุณจะรีเซ็ตสถานะระยะเวลาพักได้โดยคลิกไอคอนล็อกในแถบที่อยู่ แล้วคลิกปุ่มรีเซ็ตสิทธิ์ระยะเวลาที่ไม่ได้ลงชื่อเข้าใช้โดยอัตโนมัติ
เมื่อทดสอบการลงชื่อเข้าใช้โดยอัตโนมัติด้วย One Tap ด้วย FedCM ระบบจะมีระยะเวลาเงียบ 10 นาทีระหว่างการพยายามลงชื่อเข้าใช้โดยอัตโนมัติทุกครั้ง คุณไม่สามารถรีเซ็ตระยะเวลาที่เงียบ คุณจะต้องรอ 10 นาทีหรือใช้บัญชี Google อื่นในการทดสอบเพื่อเริ่มการลงชื่อเข้าใช้โดยอัตโนมัติอีกครั้ง
แหล่งข้อมูลที่เป็นประโยชน์
เครื่องมือวิเคราะห์ Privacy Sandbox (PSAT) เป็นส่วนขยายเครื่องมือสำหรับนักพัฒนาเว็บใน Chrome ที่มีความสามารถพิเศษในการช่วยให้นักพัฒนาซอฟต์แวร์รับมือกับการเลิกใช้งานคุกกี้ของบุคคลที่สามและการใช้ API ทางเลือก เครื่องมือจะทำงานโดยการสแกนเว็บไซต์เพื่อหาฟีเจอร์ที่ได้รับผลกระทบและแสดงรายการการเปลี่ยนแปลงที่แนะนำ