עכשיו יש כמה עדכונים ל-FedCM, כולל גרסת מקור חדשה לניסיון לאימות מחדש באופן אוטומטי.
Federated Credential Management API (FedCM) הוא API לאינטרנט לאיחוד שירותי אימות הזהות תוך שמירה על הפרטיות. עם איחוד שירותי אימות הזהות, הגורם הנסמך (RP) מסתמך על IdP (ספק זהויות) כדי לספק למשתמש מבלי לדרוש שם משתמש וסיסמה חדשים.
FedCM הוא API מובנה שמאפשר לדפדפן להבין את ההקשר שבהן המידע על הבורסה של ה-RP וה-IdP, צריך להודיע למשתמש על השיתוף של מידע ורמות הרשאה, ולמנוע ניצול לרעה של מידע לא מכוון.
עדכונים
יש כמה עדכונים בהטמעת FedCM ב-Chrome:
- לגבי טענת נכוֹנוּת (assertion) של המזהה
נקודת קצה, ספקי IdP צריכים
צריך לבדוק את הכותרת
Origin
(במקום הכותרתReferer
) כדי לראות אם תואם למקור של מזהה הלקוח. - דגל חדש של Chrome
chrome://flags/#fedcm-without-third-party-cookies
נוסף. הסימון הזה מאפשר לכם בודקים את הפונקציונליות של FedCM ב-Chrome על ידי חסימת צדדים שלישיים. קובצי Cookie.
לכל העדכונים הקודמים ב-API, כדאי לעיין במאמר ניהול פרטי כניסה מאוחדים (Federated Credential Management) עדכונים באמצעות API.
הגרסה העדכנית של FedCM כוללת תכונה חדשה של אימות אוטומטי, שמאפשרת אימות מחדש של משתמשים באופן אוטומטי כשהם חוזרים אחרי האימות הראשוני באמצעות FedCM. האימות מחדש האוטומטי זמין כגרסת מקור לניסיון החל מ-Chrome 112.
אימות מחדש אוטומטי
כרגע, אחרי שמשתמש יצר חשבון מאוחד ב-RP עם IdP דרך FedCM, בפעם הבאה שהם יבקרו באתר שבו הם צריכים לעבור את אותם שלבים בממשק המשתמש. כלומר, עליו לבצע אימות מחדש באופן מפורש כדי להמשיך בתהליך הכניסה. כאחד של FedCM היא למנוע מעקב סמוי, זה הגיוני בחוויית המשתמש (UX) יצר את החשבון המאוחד, אבל הוא הופך להיות מיותר ומסורבל לאחר שהמשתמש עבר אותו פעם אחת. אחרי שהמשתמש מעניק הרשאה לאפשר תקשורת בין הגורם המוגבל (RP) לבין ה-IdP, אין יתרונות של פרטיות או אבטחה לאכוף אישור מפורש אחר על משתמש ששייך לו שכבר אישרתם בעבר. לכן, Chrome משיק ממשק חדש ופשוט יותר חוויית משתמש שגורם מוגבל (RP) יכול לבחור למשתמשים החוזרים שלהם.
אימות אוטומטי של FedCM ('אימות אוטומטי' בקיצור) מאמת מחדש את המשתמשים באופן אוטומטי (כשהגורם המוגבל (RP) מסכים), כשהם חוזרים אחרי האימות הראשוני באמצעות FedCM. "המודל הראשוני אימות" כאן המשמעות היא שהמשתמש יוצר חשבון או נכנס האתר באמצעות הקשה על הלחצן 'המשך בתור...' בתיבת הדו-שיח לכניסה ב-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 באופן גלובלי או בשביל הגורם המוגבל.
- המשתמש השתמש רק בחשבון FedCM אחד כדי להיכנס לאתר בדפדפן הזה.
- המשתמש מחובר ל-IdP באמצעות החשבון הזה.
- האימות מחדש האוטומטי לא בוצע ב-10 הדקות האחרונות.
כשהתנאים שלמעלה מתקיימים, ניסיון לאמת מחדש באופן אוטומטי
המשתמש יתחיל מיד לאחר הפעלת navigator.credentials.get()
של FedCM.
רוצה לנסות?
אפשר לנסות את האימות האוטומטי של FedCM באופן מקומי על ידי הפעלת Chrome
סימון chrome://flags#fedcm-auto-re-authn
במצב מופעל
Chrome מגרסה 112 ואילך.
למטרות בדיקה, אפשר לאפס את התקופה השקטה של 10 דקות על ידי הסרת נתוני הדפדפן.
- נווט אל
chrome://history
. - בתיבה של היסטוריית החיפושים, מזינים את מקור ה-RP.
- לוחצים על סמל שלוש הנקודות ⋮ ובוחרים באפשרות הסרה מההיסטוריה.
- מפעילים מחדש את Chrome.
השתתפות בגרסת המקור לניסיון
אפשר להפעיל את התכונה גם באתר שלכם על ידי הצטרפות לצד השלישי גרסת מקור לניסיון שזמינה ב-Chrome 112 עד Chrome 114.
גרסאות מקור לניסיון מאפשרות לכם לנסות תכונות חדשות ולתת משוב לקהילת תקני האינטרנט, לגבי מידת השימושיות, המעשיות והיעילות שלהן. למידע נוסף, ראו מדריך לגרסאות מקור לניסיון של מפתחי אתרים. כדי להירשם לגרסת המקור לניסיון הזו או לתקופת ניסיון אחרת, יש להיכנס אל דף ההרשמה.
כדי להירשם למקור של הצד השלישי תקופת ניסיון והפעלת התכונה בצדדים שלישיים:
- עוברים לדף הרישום לתקופת המקור לניסיון.
- לוחצים על הלחצן Register וממלאים את הטופס כדי לבקש אסימון
- מזינים את מקור ההצגה בתור Web Origin.
- מסמנים את האפשרות התאמה של צד שלישי כדי להחדיר את האסימון עם JavaScript במקורות אחרים.
- לוחצים על שליחה.
- מטמיעים את האסימון שהונפק אצל צד שלישי.
כדי להטמיע את האסימון אצל צד שלישי, צריך להוסיף את הקוד הבא ל-JavaScript של ה-SDK או של ה-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.
תמונה מאת אלכס Perz על ביטול הפתיחה