ה-Federated Credential Management API נשלח ב-Chrome 108 אבל צפוי להמשיך ומתפתחות. לא מתוכנן שינויים שעלולים לגרום לכשל.
למי העדכונים האלה מיועדים?
העדכונים האלה מיועדים אם:
- אתם מוגדרים כ-IdP שמשתמשים ב-Federated Credential Management API.
- אתם מוגדרים כ-IdP או RP, ואתם רוצים להרחיב את ה-API כך שיתאים לשימוש שלכם. פנייה – למשל צפיתם בסרטון או השתתפתם בו הדיונים במאגר CG של FedID ואתם רוצים להבין את השינויים שבוצעו ב-API.
- אתם ספקי דפדפנים ואתם רוצים להתעדכן בהטמעה הסטטוס של ה-API.
אם זו הפעם הראשונה שאתם משתמשים ב-API הזה או שעדיין לא התנסיתם בו, קראו את מבוא ל-Federated Credential Management API.
יומן שינויים
כדי להתעדכן לגבי השינויים ב-FedCM API, אפשר לעיין ב בבלוג או ניוזלטר.
Chrome 125 (אפריל 2024)
- מכיוון שהמפרט עדכן את השם של 'נקודות קצה של רשימת חשבונות' ל-"accounts נקודת הקצה", התיעוד שלנו תואם.
- גרסת המקור לניסיון שלbutton Mode API זמינה בגרסה 125 של Chrome למחשב. נושאי לימוד מידע נוסף עליו בעדכוני FedCM: גרסת המקור לניסיון של Keys Mode של API, CORS ו SameSite.
- CORS נאכף על נקודת הקצה של טענת נכוֹנוּת (assertion) של המזהה החל מ-Chrome 125.
- Chrome ישלח אל המזהה רק קובצי Cookie שסומנו במפורש כ-
SameSite=None
על נקודת הקצה של טענת הנכוֹנוּת (assertion) החל מנקודת הקצה של החשבונות מ-Chrome 125.
Chrome 123 (פברואר 2024)
- נוספה תמיכה ב-Domain Hint API. הרמז לדומיין
ה-API מאפשר לגורם מוגבל (RP)
לציין מאפיין
domainHint
בקריאה ל-FedCM API כדי להציג רק התאמות חשבונות המשתמש.
Chrome 122 (ינואר 2024)
- נוספה תמיכה ב-ניתוק API. הניתוק API מאפשר גורמים מוגבלים שמנתקים את המשתמשים שלהם מהחשבון של ה-IdP בלי להסתמך על קובצי Cookie של צד שלישי.
- בבדיקה
/.well-known/web-identity
המערכת מדלגת עכשיו כשה-RP וה-IdP הם באותו אתר. - עכשיו אפשר להגדיר במשאבי המשנה התחברות באותו אתר סטטוס.
Chrome 121 (דצמבר 2023)
- התנאי הרגוע להפעלת אימות אוטומטי מחדש של FedCM:
- תכונת האימות מחדש במצב
FedCM מופעל רק כשהמשתמש חוזר. כלומר, המשתמש
צריך להיכנס ל-RP באמצעות FedCM פעם אחת בכל מופע של דפדפן,
לפני הפעלת האימות מחדש. התנאי הזה היה בהתחלה
כדי לצמצם את הסיכון למכשירי מעקב שמתחזים לזהות
ספק (IdP) ומטעה את הדפדפן כדי לגרום לו לבצע אימות מחדש באופן אוטומטי של משתמש
ללא ידיעתם או ההסכם שלהם. עם זאת, העיצוב הזה לא יכול להבטיח
הטבת הפרטיות אם לכלי המעקב יש גישה לקובצי cookie של צד שלישי
ההקשר של הגורם המוגבל. FedCM מספק רק חלק מהיכולות האפשריות דרך
לקובצי cookie של צד שלישי, כך שאם כבר יש למכשיר המעקב גישה
לקובצי cookie בהקשר של הגורם המוגבל (RP), הגישה ל-FedCM לא מספקת פרטיות נוספת
בסיכון.
מאחר שיש שימושים לגיטימיים בקובצי cookie של צד שלישי, ישפר את חוויית המשתמש. ההתנהגות הזו משתנה מ-Chrome בגרסה 121. החלטנו להקל את הגבלת התנאי שיש להתייחס למשתמש בתור חזרה: אם קובצי Cookie של צד שלישי זמינים ל-IdP ב-RP ההקשר, Chrome ייתן אמון בהצהרה של ה-IdP לגבי סטטוס החשבון של המשתמש שצוינו ברשימה שלapproved_clients
ומפעילים אימות מחדש אוטומטי אם רלוונטי. קובצי Cookie של צד שלישי יכולים להיות זמינים דרך: הגדרות משתמש, מדיניות ארגונית, היוריסטיקה (Safari, Firefox, Chrome) וממשקי API אחרים של פלטפורמת אינטרנט (כמו Storage Access API). הערה שכשה-IdP יאבד את הגישה לקובצי cookie של צד שלישי בעתיד, אם משתמש אף פעם לא העניקו הרשאה מפורשת בממשק המשתמש של FedCM (לדוגמה, לוחצים על הלחצן המשך בתור). משתמש חדש.
לא נדרשות פעולות למפתחים. לתשומת ליבכם: תהליך האימות מחדש האוטומטי יופעלו יותר עם השינוי הזה אם ל-IdP יש גישה לקובצי cookie של צד שלישי וטוען שהמשתמש יצר חשבון ב-RP בעבר.
- תכונת האימות מחדש במצב
FedCM מופעל רק כשהמשתמש חוזר. כלומר, המשתמש
צריך להיכנס ל-RP באמצעות FedCM פעם אחת בכל מופע של דפדפן,
לפני הפעלת האימות מחדש. התנאי הזה היה בהתחלה
כדי לצמצם את הסיכון למכשירי מעקב שמתחזים לזהות
ספק (IdP) ומטעה את הדפדפן כדי לגרום לו לבצע אימות מחדש באופן אוטומטי של משתמש
ללא ידיעתם או ההסכם שלהם. עם זאת, העיצוב הזה לא יכול להבטיח
הטבת הפרטיות אם לכלי המעקב יש גישה לקובצי cookie של צד שלישי
ההקשר של הגורם המוגבל. FedCM מספק רק חלק מהיכולות האפשריות דרך
לקובצי cookie של צד שלישי, כך שאם כבר יש למכשיר המעקב גישה
לקובצי cookie בהקשר של הגורם המוגבל (RP), הגישה ל-FedCM לא מספקת פרטיות נוספת
בסיכון.
Chrome 120 (נובמבר 2023)
- נוספה תמיכה בשלוש התכונות הבאות ב-Chrome 120:
- Login Status API: סטטוס ההתחברות
API הוא
מנגנון שבו אתר, ובמיוחד IdP, מיידע את הדפדפן
סטטוס ההתחברות. באמצעות ה-API הזה, הדפדפן יכול להפחית בקשות מיותרות ל:
ה-IdP ומצמצמים התקפות תזמון פוטנציאליות. ממשק ה-API של סטטוס ההתחברות הוא
ל-FedCM.
לאחר השינוי הזה, הדגל
chrome://flags/#fedcm-without-third-party-cookies
אין יותר צורך להפעיל FedCM כשקובץ cookie של צד שלישי חסום. - Error API: השגיאה API שולח התראה משתמש על ידי הצגה של ממשק משתמש של דפדפן עם פרטי השגיאה שסופקו על ידי ה-IdP.
- סימון API שנבחר באופן אוטומטי: הדגל שנבחר באופן אוטומטי API מציין אם התקבלה הרשאה מפורשת ממשתמש באמצעות הקשה על הלחצן המשך בתור עם ה-IdP ו-RP, לאחר אימות מחדש באופן אוטומטי או שהתרחש גישור מפורש. השיתוף מתבצע רק אחרי שהמשתמש הוענקה הרשאה לתקשורת IdP ו-RP.
- Login Status API: סטטוס ההתחברות
API הוא
מנגנון שבו אתר, ובמיוחד IdP, מיידע את הדפדפן
סטטוס ההתחברות. באמצעות ה-API הזה, הדפדפן יכול להפחית בקשות מיותרות ל:
ה-IdP ומצמצמים התקפות תזמון פוטנציאליות. ממשק ה-API של סטטוס ההתחברות הוא
ל-FedCM.
לאחר השינוי הזה, הדגל
Chrome 117 (ספטמבר 2023)
- גרסת המקור לניסיון של Idp Sign-In Status API זמינה ב-Android מגרסה 117 של Chrome. מידע נוסף זמין בעדכוני FedCM: ממשק API של סטטוס כניסה ל-IdP, רמז להתחברות ועוד.
Chrome 116 (אוגוסט 2023)
- נוספה תמיכה בשלוש התכונות הבאות ב-Chrome 116:
- Login Hint API: מציינים את חשבון המשתמש המועדף שצריך להיכנס אליו.
- User Info API: אחזור המידע של המשתמש החוזר כדי שספק הזהויות (IdP) יוכל לעבד לחצן כניסה בהתאמה אישית בתוך iframe.
- RP Context API: צריך להשתמש בשם שונה מ'כניסה' בתיבת הדו-שיח FedCM.
- גרסת המקור לניסיון של ה-API של סטטוס הכניסה ל-IdP זמינה. מידע נוסף זמין בעדכוני FedCM: ממשק API של סטטוס כניסה ל-IdP, רמז להתחברות ועוד.
Chrome 115 (יוני 2023)
- נוספה תמיכה באימות מחדש אוטומטי שמאפשרת למשתמשים לבצע אימות מחדש באופן אוטומטי כשהם חוזרים אחרי האימות הראשוני באמצעות FedCM. כך אפשר לשפר את חוויית המשתמש ולאפשר אימות מחדש ב-RP בצורה חלקה יותר אחרי האימות הראשוני. מידע נוסף על אימות אוטומטי של FedCM
Chrome 110 (פברואר 2023)
- בנקודת הקצה של טענת הנכוֹנוּת (assertion) של המזהה, ספקי זהויות צריכים לבדוק את הכותרת
Origin
(במקום את הכותרתReferer
) כדי לראות אם הערך תואם למקור של מזהה הלקוח. - עכשיו יש תמיכה ב-iframe ממקורות שונים ב-FedCM.
על כלי ההטמעה
Permissions-Policy
identity-credentials-get
כדי להתיר את FedCM API בגישה המוטמעת ממקורות שונים iframe. אפשר לעיין בדוגמה של של ה-iframe ממקורות שונים. - נוסף דגל Chrome חדש
chrome://flags/#fedcm-without-third-party-cookies
. הסימון הזה מאפשר לבדוק את הפונקציונליות של FedCM ב-Chrome. על ידי חסימת קובצי cookie של צד שלישי. מידע נוסף זמין במסמכי התיעוד של FedCM.
Chrome 108 (אוקטובר 2022)
- 'מניפסט ברמה העליונה' נקרא עכשיו 'קובץ ידוע' במסמך. אין צורך לבצע שינויים בהטמעה.
- 'מניפסט IdP' נקרא עכשיו 'קובץ config' במסמך. לא נדרשים שינויים בהטמעה.
- השדה
id_token_endpoint
ב'קובץ התצורה'. השם השתנה ל-id_assertion_endpoint
. - הבקשות ל-IdP כוללות עכשיו את השדה
Sec-Fetch-Dest: webidentity
הכותרת במקום הכותרתSec-FedCM-CSRF: ?1
.
Chrome 105 (אוגוסט 2022)
- הוספנו למסמך פרטי אבטחה חשובים. הזהות
הספק (IdP) צריך לבדוק אם הכותרת
Referer
תואמת למקור הגורם המוגבל (RP) שרשום מראש נקודת הקצה של האסימון המזהה. - השם של המניפסט ברמה העליונה השתנה מ-
/.well-known/fedcm.json
ל-/.well-known/web-identity
וכתובת ה-URL שצוינה ב-provider_urls
צריכות כוללים את שם הקובץ. - שיטות
login()
,logout()
ו-revoke()
ב-FederatedCredential
מופעים אינם זמינים עוד. - ב-Federated Credential Management API נעשה עכשיו שימוש בסוג חדש
IdentityCredential
במקוםFederatedCredential
. אפשר להשתמש באפשרות הזו עבור זיהוי תכונות, אבל מעבר לזה הוא שינוי בלתי נראה ברובו. - העברת פונקציונליות ההתחברות משילוב של
navigator.credentials.get()
והקבוצהFederatedCredential.prototype.login()
עדnavigator.credentials.get()
. - נקודת הקצה לביטול במניפסט לא בתוקף.
- משתמשים בשדה
identity
במקום בשדהfederated
בשבילnavigator.credentials.get()
שיחות. url
נקראת עכשיוconfigURL
וחייבת להיות כתובת ה-URL המלאה של קובץ ה-JSON של המניפסט במקום הנתיב של שיחתnavigator.credentials.get()
.nonce
הוא עכשיו פרמטר אופציונלי עבורnavigator.credentials.get()
.hint
כבר לא זמין כאפשרות עבורnavigator.credentials.get()
.
const credential = await navigator.credentials.get({
identity: {
providers: [{
configURL: 'https://idp.example/anything.json',
clientId: '********',
nonce: '******'
}]
}
});
const { token } = credential;
Chrome 104 (יוני 2022)
- הפרמטר
consent_acquired
נשלח לנקודת הקצה של אסימון מזההdisclosure_text_shown
. הערך לא משתנה. - סמלי מיתוג בחשבון המניפסט של ה-IdP הפסיקו לתמוך בתמונות SVG, אבל הם לא צריכים יותר לקבל אישור הגורמים המוגבלים Content Security Policy.
Chrome 103 (מאי 2022)
- יש תמיכה בסביבות של מחשבים.
- תומכת בהגדרות לכל גורם מוגבל במחשב.
- נקודת קצה למטא-נתונים של לקוח הוא אופציונלי עכשיו. בנקודת הקצה הזו, גם כתובת ה-URL של מדיניות הפרטיות היא אופציונלית.
- נוספה אזהרה לגבי השימוש ב-CSP
connect-src
במסמך.