เราจะเพิ่มตัวเลือกอนุญาตครั้งนี้ลงในข้อความแจ้งขอสิทธิ์ โดยจะเริ่มทยอยเปิดตัวอย่างค่อยเป็นค่อยไปตั้งแต่ Chrome 116 เป็นต้นไป เป้าหมายของเราคือการช่วยให้ผู้ใช้ใช้ความสามารถอันทรงพลังของเว็บได้ง่ายขึ้นตามเงื่อนไขของตนเอง อนุญาตครั้งนี้จะพร้อมใช้งานบนเดสก์ท็อปสำหรับสิทธิ์ที่พบบ่อยที่สุดบางอย่าง ได้แก่ ตำแหน่งทางภูมิศาสตร์ กล้อง และไมโครโฟน ข้อความแจ้งขอสิทธิ์สำหรับความสามารถอื่นๆ และบนเว็บบนมือถือจะยังคงเหมือนเดิมในตอนนี้ แต่อาจมีการเปลี่ยนแปลงในอนาคต
หากคุณเป็นเจ้าของเว็บไซต์ โปรดดูผลกระทบและคำแนะนำ แล้วลองใช้เดโม
UX ใหม่สำหรับสิทธิ์
UX ของสิทธิ์ก่อน Chrome 116
ผู้ใช้จะเห็นตัวเลือก 3 ตัวเลือกต่อไปนี้
- อนุญาต: อนุญาตแบบถาวร
- บล็อก: บล็อกถาวร
- คลิกปุ่ม x: บล็อกชั่วคราว เว็บไซต์จะแจ้งให้ผู้ใช้ทราบอีกครั้งในภายหลังได้ไม่เกิน 3 ครั้ง
คุณจัดการสิทธิ์ได้ผ่านการควบคุมเว็บไซต์ในแถบที่อยู่หรือผ่านการตั้งค่าเว็บไซต์
UX สิทธิ์ใหม่จาก Chrome 116
ผู้ใช้จะมีตัวเลือก 4 อย่างดังนี้
- อนุญาตในครั้งนี้: อนุญาตชั่วคราว
- อนุญาตทุกครั้งที่เข้าชม: อนุญาตแบบถาวร
- ไม่อนุญาต: บล็อกถาวร
- คลิกปุ่ม x: บล็อกชั่วคราว
เมื่อผู้ใช้เลือกอนุญาตในครั้งนี้ สิทธิ์ที่ให้จะเป็นสิทธิ์ชั่วคราว หรือที่เรียกว่าสิทธิ์ครั้งเดียว ระยะเวลาของเซสชันจะจำกัดอยู่แค่การโต้ตอบที่กำลังดำเนินอยู่กับเว็บแอปพลิเคชัน
ประโยชน์ของผู้ใช้และการออกแบบ UX ของ "อนุญาตครั้งนี้"
อนุญาตในครั้งนี้จะช่วยให้ผู้ใช้ทำสิ่งต่อไปนี้ได้
- ควบคุมได้มากขึ้น การวิจัยผู้ใช้ Chrome แสดงให้เห็นว่าผู้ใช้มักจะไม่พร้อมที่จะตัดสินใจให้สิทธิ์ของเว็บไซต์อย่างถาวร โดยพยายามประเมินว่าตนจะได้รับประโยชน์ใดตอบแทนจากการให้สิทธิ์ การเสนอตัวเลือก "อนุญาต" แบบครั้งเดียวจะตอบสนองความต้องการนี้และทำให้การอนุญาตสิทธิ์เข้าถึงมีความเสี่ยงน้อยลง
- เพิ่มความชัดเจน ตัวเลือกอนุญาตในครั้งนี้และอนุญาตทุกครั้งที่เข้าชมอย่างชัดเจนจะทำให้ทราบว่าตัวเลือกหนึ่งเป็นแบบชั่วคราว ส่วนอีกตัวเลือกหนึ่งเป็นแบบถาวร
สิทธิ์ครั้งเดียวในเบราว์เซอร์อื่นๆ
บนเว็บ เบราว์เซอร์หลายตัวรองรับสิทธิ์แบบครั้งเดียว ซึ่งรวมถึง Safari และ Firefox หากต้องการดูว่าสิทธิ์เหล่านี้ทำงานบนอุปกรณ์ของคุณอย่างไร ให้ทดลองใช้ https://permission.site/one-time อย่าลืมลองใช้สิทธิ์ตำแหน่งทางภูมิศาสตร์ กล้อง และไมโครโฟน เนื่องจากสิทธิ์เหล่านี้อาจมีลักษณะการทำงานที่เฉพาะเจาะจง
เช่น
- ใน Safari 16 บนเดสก์ท็อป ตำแหน่งทางภูมิศาสตร์จะเป็นแบบครั้งเดียวโดยค่าเริ่มต้น (จนกว่าจะมีการไปยังส่วนต่างๆ ครั้งถัดไป) ผู้ใช้เลือกให้ระบบเก็บสิทธิ์เข้าถึงไว้เป็นเวลา 24 ชั่วโมงได้ผ่านช่องทำเครื่องหมาย
- ใน Firefox 115 บนเดสก์ท็อป การอนุญาตตำแหน่งทางภูมิศาสตร์ กล้อง และไมโครโฟนจะเป็นแบบครั้งเดียวโดยค่าเริ่มต้น ผู้ใช้เลือกรับสิทธิ์เข้าถึงแบบถาวรได้ผ่านช่องทําเครื่องหมาย
ผลกระทบและคำแนะนำ
ผลกระทบของสิทธิ์ครั้งเดียว
- การเปิดตัวสิทธิ์แบบครั้งเดียวจะไม่ส่งผลต่อสิทธิ์ที่ผู้ใช้เคยให้ไว้แบบถาวร
- เมื่อผู้ใช้ตัดสินใจเกี่ยวกับข้อความแจ้งขอสิทธิ์แล้ว สถานะสิทธิ์จะได้รับอนุญาตหรือถูกปฏิเสธตลอดระยะเวลาที่ผู้ใช้เข้าชม สิทธิ์ครั้งเดียวไม่มีผลในเรื่องนี้
- อย่างไรก็ตาม หากผู้ใช้เลือกอนุญาตครั้งนี้ ผู้ใช้จะเห็นข้อความแจ้งขอสิทธิ์อีกครั้งในการเข้าชมครั้งถัดไป
เราขอแนะนำให้เจ้าของเว็บไซต์ทำดังนี้เพื่อรองรับสิทธิ์แบบครั้งเดียว
- ตรวจสอบว่าการติดตั้งใช้งานเป็นไปตามแนวทางปฏิบัติแนะนำเกี่ยวกับสิทธิ์ ดูแนวทางปฏิบัติแนะนำ
- ทำความเข้าใจว่าสิทธิ์แบบครั้งเดียวจะหมดอายุเมื่อใด ดูรายละเอียดได้ที่การหมดอายุของสิทธิ์แบบครั้งเดียว
- ทำความเข้าใจลักษณะการทำงานของ Permissions API สำหรับสิทธิ์แบบครั้งเดียว และวิธีสังเกตการหมดอายุ ดูรายละเอียดใน Permissions API
แนวทางปฏิบัติแนะนำ
อนุญาตครั้งนี้อาจทำให้ผู้คนมีแนวโน้มที่จะให้สิทธิ์เพื่อลองใช้ความสามารถต่างๆ มากขึ้น แต่ก็อาจลดความเต็มใจที่จะให้สิทธิ์เข้าถึงแบบถาวรด้วย ดังนั้นการทำตามแนวทางปฏิบัติแนะนำจึงมีความสำคัญมากยิ่งขึ้น
- ระบุบริบทที่จำเป็นก่อนขอสิทธิ์ อธิบายให้ผู้ใช้ทราบว่าเหตุใดความสามารถจึงเป็นประโยชน์ต่อผู้ใช้
- ขอสิทธิ์ในเวลาที่เหมาะสมและคาดการณ์ไว้ ในอุดมคติแล้ว คุณควรให้ผู้ใช้แสดงความตั้งใจที่จะใช้ความสามารถบางอย่างได้ตามต้องการ
- ตลอดระยะเวลาที่ผู้ใช้เข้าชม ให้มอบประสบการณ์เดียวกันไม่ว่าผู้ใช้จะเลือกตัวเลือกแบบครั้งเดียวหรือแบบถาวรก็ตาม
ดูคำแนะนำเพิ่มเติมได้ในUX ของสิทธิ์
การหมดอายุของสิทธิ์ครั้งเดียว
โดยค่าเริ่มต้น สิทธิ์ของเว็บทั้งหมดจะเชื่อมโยงกับต้นทาง ซึ่งถือได้ว่าเป็นแอปของตัวเอง เมื่อเลือกอนุญาตเวลานี้ ผู้ใช้จะให้สิทธิ์ครั้งเดียวแก่ต้นทาง โดยพื้นฐานแล้ว สิทธิ์แบบครั้งเดียวจะหมดอายุเมื่อผู้ใช้หยุดโต้ตอบกับต้นทางนั้นอย่างต่อเนื่องเป็นระยะเวลาหนึ่ง ซึ่งหมายความว่าเว็บไซต์จะใช้ความสามารถต่อไปได้หากผู้ใช้เปลี่ยนไปใช้หน้าเว็บอื่นในแท็บอื่นชั่วครู่แล้วกลับมา
กล่าวโดยละเอียดคือ สิทธิ์ครั้งเดียวจะหมดอายุทันทีที่ตรงตามเงื่อนไขใดเงื่อนไขหนึ่งต่อไปนี้
- หน้าเว็บถูกปิด ผู้ใช้ไปยังหน้าอื่น หรือยกเลิก ซึ่งรวมถึงการปิด Chrome ด้วย
- เวลาผ่านไป 16 ชั่วโมงนับตั้งแต่ให้สิทธิ์
- ผู้ใช้เพิกถอนสิทธิ์ด้วยตนเอง (เช่น ในการควบคุมเว็บไซต์) หรือมีการลบล้างสิทธิ์ผ่านนโยบายขององค์กร
- หน้าเว็บอยู่ในเบื้องหลังอย่างน้อย 5 นาที ยกเว้นในกรณีที่อนุญาตให้ความสามารถทำงานในเบื้องหลังได้ เช่น กล้องหรือไมโครโฟน ในกรณีนี้ ตราบใดที่เว็บไซต์ใช้ความสามารถดังกล่าว Chrome จะแสดงตัวบ่งชี้แนวแท็บและจะไม่เริ่มตัวจับเวลา 5 นาทีจนกว่าหน้าเว็บจะหยุดใช้ความสามารถดังกล่าว โปรดทราบว่าตัวจับเวลา 16 ชั่วโมงยังคงทำงานอยู่
แท็บเบื้องหลัง
แท็บเบราว์เซอร์จะอยู่ในเบื้องหลังเมื่อไม่ได้อยู่ในเบื้องหน้า แท็บจะอยู่เบื้องหน้าเมื่อเป็นแท็บที่มองเห็นได้ในหน้าต่างเบราว์เซอร์ที่ไม่ได้ย่อ
ใน Chrome ความสามารถบางอย่าง เช่น ตำแหน่งทางภูมิศาสตร์ จะทำงานได้เฉพาะในแท็บที่อยู่เบื้องหน้าเท่านั้น และไม่อนุญาตให้ทำงานในแท็บพื้นหลัง ส่วนฟีเจอร์อื่นๆ เช่น กล้องและไมโครโฟน จะทำงานในแท็บพื้นหลังได้

ตัวบ่งชี้แนวแท็บ
ความสามารถที่ทำงานต่อไปเมื่อแท็บอยู่ในเบื้องหลังจะมีตัวบ่งชี้แนวแท็บ เช่น กล้องมีตัวบ่งชี้แนวแท็บ
ตำแหน่งทางภูมิศาสตร์ไม่จำเป็นต้องมีตัวบ่งชี้แนวแท็บ เนื่องจากระบบจะหยุดการเข้าถึงตำแหน่งทางภูมิศาสตร์ชั่วคราวทันทีที่หน้าเว็บอยู่ในเบื้องหลัง
ตัวอย่าง
- ตำแหน่งทางภูมิศาสตร์: ผู้ใช้อยู่ใน
example.comและให้สิทธิ์เข้าถึงตำแหน่งทางภูมิศาสตร์แบบครั้งเดียว ผู้ใช้เปลี่ยนไปใช้แท็บอื่น ซึ่งจะทำให้example.comเป็นแท็บพื้นหลัง ระบบจะหยุดการเข้าถึงตำแหน่งทางภูมิศาสตร์ชั่วคราวทันทีเนื่องจาก Chrome ไม่อนุญาตให้เข้าถึงตำแหน่งทางภูมิศาสตร์ในเบื้องหลัง แต่สิทธิ์ครั้งเดียวยังคงใช้ได้ หากผู้ใช้กลับมาที่example.comภายใน 5 นาที หน้าเว็บจะกลับมาเข้าถึงตำแหน่งทางภูมิศาสตร์ได้ (และระบบจะรีเซ็ตตัวจับเวลาการหมดอายุ 5 นาที) หากไม่ดำเนินการดังกล่าว สิทธิ์ครั้งเดียวจะหมดอายุ - กล้อง/ไมโครโฟน: ผู้ใช้อยู่ใน
example.comและให้สิทธิ์เข้าถึงกล้องแบบครั้งเดียว ผู้ใช้เปลี่ยนไปใช้แท็บอื่น ซึ่งจะทำให้example.comเป็นแท็บพื้นหลัง การเข้าถึงกล้องจะดำเนินการต่อได้เนื่องจาก Chrome อนุญาตให้เข้าถึงกล้องต่อในเบื้องหลัง Chrome จะแสดงตัวบ่งชี้แนวแท็บสำหรับกล้องตราบใดที่ยังมีการใช้งานอยู่เพื่อให้ผู้ใช้ทราบ เมื่อถึงจุดหนึ่ง เว็บไซต์อาจตัดสินใจหยุดการเข้าถึงกล้อง ในกรณีนี้ ตัวตั้งเวลาหมดอายุ 5 นาทีจะเริ่มทำงาน หลังจากผ่านไป 5 นาทีโดยไม่มีสิทธิ์เข้าถึงกล้อง สิทธิ์ครั้งเดียวจะหมดอายุ
Permissions API
หากต้องการค้นหาสถานะของสิทธิ์ API คุณสามารถใช้ Permissions API ได้โดยทำดังนี้
- หากผู้ใช้เลือกอนุญาตครั้งนี้ ระบบจะตั้งค่าสถานะ Permission API เป็น
grantedซึ่งหมายความว่าสิทธิ์ครั้งเดียวที่ยังไม่หมดอายุและสิทธิ์แบบถาวรจะแยกกันไม่ออกและมีสถานะเดียวกันคือgranted - เมื่อสิทธิ์แบบครั้งเดียวหมดอายุแล้ว ระบบจะเปลี่ยนสถานะกลับเป็น
prompt - หากต้องการสังเกตการหมดอายุของสิทธิ์ครั้งเดียว ให้ลงทะเบียนตัวแฮนเดิลเหตุการณ์
PermissionStatus.onchange
สาธิต
- เปิด Chrome 116 ขึ้นไปในคอมพิวเตอร์เดสก์ท็อป
- เปิด
chrome://flags/#one-time-permissionแล้วเลือกเปิดใช้ รีสตาร์ท Chrome ขั้นตอนนี้จะบังคับเปิดใช้สิทธิ์แบบครั้งเดียวในกรณีที่ยังไม่ได้เปิดตัวในเบราว์เซอร์ Chrome - เปิด https://permission.site/one-time
- คลิกปุ่มตำแหน่งทางภูมิศาสตร์
- สังเกตข้อความแจ้งขอสิทธิ์ครั้งเดียวใหม่
- เลือกอนุญาตในครั้งนี้
- เปิดการควบคุมเว็บไซต์ โปรดสังเกตว่าคุณจัดการสิทธิ์แบบครั้งเดียวได้
- ปิดแท็บสำหรับ https://permission.site/one-time ตรวจสอบว่าไม่มีแท็บอื่นสำหรับต้นทางนั้นเปิดอยู่
- เปิด https://permission.site/one-time ในแท็บใหม่
- เปิดการควบคุมเว็บไซต์ ไปที่การตั้งค่าเว็บไซต์
- สังเกตว่าสิทธิ์ตำแหน่งทางภูมิศาสตร์กลับไปอยู่ที่สถานะเริ่มต้นแล้ว ซึ่งก็คือถาม (ค่าเริ่มต้น)
บทสรุปและความคิดเห็น
สิทธิ์แบบครั้งเดียวช่วยให้ผู้ใช้มีตัวเลือกมากขึ้น และ UI สิทธิ์ใหม่ของ Chrome จะมอบประสบการณ์การใช้งานสิทธิ์ที่สอดคล้องกันมากขึ้นในเบราว์เซอร์และแพลตฟอร์มต่างๆ
หากพบปัญหาเกี่ยวกับสิทธิ์แบบครั้งเดียว โปรดสร้างปัญหา crbug ใหม่สำหรับข้อความแจ้งขอสิทธิ์
คำขอบคุณ
ขอขอบคุณ Rachel Andrew, Serena Chen, Balazs Engedy, Marian Harbach, Florian Jacky และ Thomas Steiner ที่ตรวจสอบบทความนี้