עדכונים של Fedeated Credential Management API

ה-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)

Chrome 123 (פברואר 2024)

  • נוספה תמיכה ב-Domain Hint API. הרמז לדומיין ה-API מאפשר לגורם מוגבל (RP) לציין מאפיין domainHint בקריאה ל-FedCM API כדי להציג רק התאמות חשבונות המשתמש.

Chrome 122 (ינואר 2024)

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 בעבר.

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.

Chrome 117 (ספטמבר 2023)

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 במסמך.

משאבים