ข้อมูลอัปเดตจาก FedCM: ช่วงทดลองใช้จากต้นทางสำหรับการตรวจสอบสิทธิ์อีกครั้งโดยอัตโนมัติ

ขอแนะนําการอัปเดตบางอย่างเกี่ยวกับ FedCM รวมถึงการทดลองใช้ต้นทางใหม่สําหรับการตรวจสอบสิทธิ์อีกครั้งโดยอัตโนมัติ

Federated Credential Management API (FedCM) เป็น Web API สําหรับการรวมข้อมูลระบุตัวตนที่รักษาความเป็นส่วนตัว เมื่อใช้การรวมข้อมูลประจำตัว RP (บุคคลที่เชื่อถือ) จะอาศัย IdP (ผู้ให้บริการข้อมูลประจำตัว) เพื่อสร้างบัญชีให้ผู้ใช้โดยไม่ต้องใช้ชื่อผู้ใช้และรหัสผ่านใหม่

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

อัปเดต

ข้อมูลอัปเดตเกี่ยวกับการนำ FedCM มาใช้ใน Chrome มีดังนี้

ดูข้อมูลอัปเดตทั้งหมดที่ผ่านมาของ API ได้ที่การจัดการข้อมูลเข้าสู่ระบบแบบรวมศูนย์ การอัปเดต API

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

การตรวจสอบสิทธิ์ใหม่อัตโนมัติ

ปัจจุบันหลังจากที่ผู้ใช้สร้างบัญชีที่รวมศูนย์ใน RP ด้วย IdP ผ่าน FedCM แล้ว ครั้งถัดไปที่เข้าชมเว็บไซต์ ผู้ใช้จะต้องทำตามขั้นตอนเดียวกันในอินเทอร์เฟซผู้ใช้ กล่าวคือ ผู้ใช้ต้องยืนยันและตรวจสอบสิทธิ์อีกครั้งอย่างชัดเจนเพื่อดำเนินการตามขั้นตอนการลงชื่อเข้าใช้ เนื่องจากเป้าหมายหลักประการหนึ่งของ FedCM คือการป้องกันการติดตามที่ไม่เปิดเผย ประสบการณ์ของผู้ใช้ (UX) นี้จะเหมาะสมก่อนที่ผู้ใช้จะสร้างบัญชีที่รวมศูนย์ แต่จะไม่จำเป็นและยุ่งยากหลังจากที่ผู้ใช้ดำเนินการนี้ไปแล้ว 1 ครั้ง หลังจากที่ผู้ใช้ให้สิทธิ์ในการอนุญาตให้มีการติดต่อสื่อสารระหว่าง RP กับ IdP แล้ว จะไม่มีประโยชน์ด้านความเป็นส่วนตัวหรือความปลอดภัยในการบังคับใช้การยืนยันจากผู้ใช้อย่างชัดแจ้งอีกสำหรับสิ่งที่ผู้ใช้ได้ยอมรับไปแล้วก่อนหน้านี้ ด้วยเหตุนี้ Chrome จึงเปิดตัว UX ที่มีประสิทธิภาพมากขึ้นซึ่ง RP สามารถเลือกให้ผู้ใช้ที่กลับมาได้

การตรวจสอบสิทธิ์ด้วย FedCM อีกครั้งโดยอัตโนมัติ (หรือเรียกสั้นๆ ว่า "การตรวจสอบสิทธิ์อีกครั้งโดยอัตโนมัติ") จะตรวจสอบสิทธิ์ผู้ใช้อีกครั้งโดยอัตโนมัติ (เมื่อ RP เลือกใช้) เมื่อผู้ใช้กลับมาหลังจากการตรวจสอบสิทธิ์ครั้งแรกโดยใช้ FedCM "การตรวจสอบสิทธิ์ครั้งแรก" ในที่นี้หมายถึงการที่ผู้ใช้สร้างบัญชีหรือลงชื่อเข้าใช้เว็บไซต์ของ RP โดยการแตะปุ่ม "ดำเนินการต่อในฐานะ..." ในกล่องโต้ตอบการลงชื่อเข้าใช้ของ FedCM เป็นครั้งแรกในอินสแตนซ์เบราว์เซอร์เดียวกัน

กล่องโต้ตอบที่ผู้ใช้แตะเพื่อสร้างบัญชีหรือตรวจสอบสิทธิ์
กล่องโต้ตอบที่ผู้ใช้แตะเพื่อสร้างบัญชีหรือตรวจสอบสิทธิ์

RP สามารถขอการรับรองอีกครั้งโดยอัตโนมัติได้โดยโทรหา navigator.credentials.get() ด้วย autoReauthn: true

const cred = await navigator.credentials.get({
  identity: {
    providers: [{
      configURL: "https://idp.example/fedcm.json",
      clientId: "1234",
    }],
    // NOTE: We are exploring different API options to expose this
    // functionality here:
    // https://github.com/fedidcg/FedCM/issues/429#issuecomment-1426358523
    // You should expect that, as a result of the origin trial, we'll
    // learn more from developers and browser vendors what works best here.
    autoReauthn: true, // default to false
  },
});

เมื่อใช้การเรียกนี้ การตรวจสอบสิทธิ์อีกครั้งโดยอัตโนมัติจะเกิดขึ้นภายใต้เงื่อนไขต่อไปนี้

  • FedCM พร้อมใช้งาน เช่น ผู้ใช้ไม่ได้ปิดใช้ FedCM ทั่วโลกหรือสำหรับ RP
  • ผู้ใช้ใช้บัญชี FedCM เพียงบัญชีเดียวในการลงชื่อเข้าใช้เว็บไซต์ในเบราว์เซอร์นี้
  • ผู้ใช้ลงชื่อเข้าใช้ IdP ด้วยบัญชีดังกล่าว
  • ไม่มีการขอสิทธิ์ใหม่อัตโนมัติในช่วง 10 นาทีที่ผ่านมา

เมื่อเป็นไปตามเงื่อนไขข้างต้น ระบบจะเริ่มพยายามตรวจสอบสิทธิ์ผู้ใช้อีกครั้งโดยอัตโนมัติทันทีที่เรียกใช้ FedCM navigator.credentials.get()

ผู้ใช้กำลังตรวจสอบสิทธิ์กับ RP อีกครั้งโดยอัตโนมัติโดยใช้ FedCM

ลองเลย

คุณลองตรวจสอบสิทธิ์ FedCM อีกครั้งโดยอัตโนมัติในเครื่องได้โดยการเปิดFlag ของ Chrome chrome://flags#fedcm-auto-re-authn ใน Chrome 112 ขึ้นไป

คุณสามารถรีเซ็ตระยะเวลาพัก 10 นาทีเพื่อวัตถุประสงค์ในการทดสอบได้โดยนำข้อมูลเบราว์เซอร์ออก

  1. นำทางไปยัง chrome://history
  2. ในช่องประวัติการค้นหา ให้ป้อนต้นทางของ RP
  3. คลิกไอคอน 3 จุด ⋮ แล้วเลือกนำออกจากประวัติ
  4. รีสตาร์ท Chrome

เข้าร่วมช่วงทดลองใช้จากต้นทาง

นอกจากนี้ คุณยังเปิดใช้ฟีเจอร์นี้ในเว็บไซต์ได้โดยเข้าร่วมช่วงทดลองใช้แหล่งที่มาของบุคคลที่สามที่มีให้ใช้งานตั้งแต่ Chrome 112 จนถึง Chrome 114

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

วิธีลงทะเบียนสำหรับต้นทางของบุคคลที่สาม ทดลองใช้และเปิดใช้งานฟีเจอร์ โดยบุคคลที่สาม:

  1. ไปที่หน้าการลงทะเบียนช่วงทดลองใช้จากต้นทาง
  2. คลิกปุ่มลงทะเบียนและกรอกแบบฟอร์มเพื่อขอโทเค็น
  3. ป้อนต้นทางการแสดงผลเป็นต้นทางเว็บ
  4. ตรวจสอบการจับคู่ของบุคคลที่สามเพื่อแทรกโทเค็นด้วย JavaScript ในต้นทางอื่นๆ
  5. คลิกส่ง
  6. ฝังโทเค็นที่ออกให้กับบุคคลที่สาม

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

const tokenElement = document.createElement('meta');
tokenElement.httpEquiv = 'origin-trial';
tokenElement.content = 'TOKEN_GOES_HERE';
document.head.appendChild(tokenElement);

แทนที่ TOKEN_GOES_HERE ด้วยโทเค็นของคุณเอง

มีส่วนร่วมและแชร์ความคิดเห็น

หากมีความคิดเห็นหรือพบปัญหาระหว่างการทดสอบ โปรดแชร์กับเราที่ crbug.com ในส่วนคอมโพเนนต์ Blink>Identity>FedCM

รูปภาพโดย Alex Perz จาก Unsplash