Updates der Federated Credential Management API

Die Federated Credential Management API ist in Chrome 108 verfügbar, wird aber voraussichtlich weiterentwickelt. Es sind keine funktionsgefährdenden Änderungen geplant.

Für wen sind diese Updates gedacht?

Diese Updates sind für Sie geeignet, wenn:

  • Sie sind ein Identitätsanbieter, der die Federated Credential Management API verwendet.
  • Sie sind ein Identitätsanbieter oder RP und möchten die API an Ihren Anwendungsfall anpassen. Beispiel: Sie haben die Diskussionen im FedID CG-Repository beobachtet oder daran teilgenommen und möchten die an der API vorgenommenen Änderungen kennenlernen.
  • Sie sind Browseranbieter und möchten den Implementierungsstatus der API erfahren.

Wenn Sie diese API noch nicht kennen oder noch nicht damit experimentiert haben, lesen Sie den Einstieg in die Federated Credential Management API.

Änderungsprotokoll

Aktuelle Informationen zu den Änderungen an der FedCM API finden Sie in unserem Blog oder im Newsletter.

Chrome 131 (Oktober 2024)

  • Die Storage Access API verwendet jetzt FedCM als Vertrauenssignal.
    • Wenn sich ein Nutzer mit FedCM authentifiziert und die RP-Funktion aktiviert ist, kann der eingebettete Identitätsanbieter die requestStorageAccess()-Methode aufrufen, um automatisch Speicherzugriff auf seine eigenen Top-Level-Cookies zu erhalten, ohne dass eine zusätzliche Aufforderung für den Nutzer erforderlich ist.

Chrome 125 (April 2024)

Chrome 123 (Februar 2024)

  • Unterstützung für die Domain Hint API wurde hinzugefügt. Mit der Domain-Hinweis-API können RPs eine domainHint-Property in einem FedCM API-Aufruf angeben, um nur übereinstimmende Konten für den Nutzer anzuzeigen.

Chrome 122 (Januar 2024)

  • Unterstützung für die Disconnect API wurde hinzugefügt. Mit der Disconnect API können RPs die Verbindung ihrer Nutzer zum Konto des Identitätsanbieters trennen, ohne Drittanbieter-Cookies zu verwenden.
  • Die Prüfung/.well-known/web-identity wird jetzt übersprungen, wenn sich RP und IdP auf derselben Website befinden.
  • Untergeordnete Ressourcen können jetzt einen Anmeldestatus für dieselbe Website festlegen.

Chrome 121 (Dezember 2023)

  • Die lockere Bedingung für die automatische Reauthentifizierung von FedCM:
    • Die Funktion zur automatischen erneuten Authentifizierung in FedCM wird nur ausgelöst, wenn der Nutzer zurückkehrt. Das bedeutet, dass sich der Nutzer in jeder Browserinstanz einmal mit FedCM beim RP anmelden muss, bevor die automatische erneute Authentifizierung ausgelöst werden kann. Diese Bedingung wurde ursprünglich eingeführt, um das Risiko zu verringern, dass sich Tracker als Identitätsanbieter ausgeben und den Browser dazu bringen, einen Nutzer ohne dessen Wissen oder Zustimmung automatisch noch einmal zu authentifizieren. Bei diesem Design kann der Datenschutz jedoch nicht garantiert werden, wenn der Tracker im Kontext der Remarketing-Kampagne auf Drittanbieter-Cookies zugreifen kann. FedCM bietet nur einen Teil der Funktionen, die über Drittanbieter-Cookies möglich sind. Wenn der Tracker bereits Zugriff auf Drittanbieter-Cookies im Kontext des RP hat, stellt der Zugriff auf FedCM kein zusätzliches Datenschutzrisiko dar.
      Da es legitime Verwendungen von Drittanbieter-Cookies gibt und eine Lockerung der Bedingung die Nutzerfreundlichkeit verbessern würde, ändert sich dieses Verhalten ab Chrome 121. Wir haben uns entschieden, die Einschränkung der Bedingung für die Behandlung eines Nutzers als wiederkehrenden Nutzer zu lockern: Wenn dem Identitätsanbieter im RP-Kontext Drittanbieter-Cookies zur Verfügung stehen, vertraut Chrome der Behauptung des Identitätsanbieters über den Kontostatus des Nutzers, die über die Liste approved_clients angegeben ist, und löst gegebenenfalls eine automatische erneute Authentifizierung aus. Drittanbieter-Cookies können über Nutzereinstellungen, Unternehmensrichtlinien, Heuristiken (Safari, Firefox, Chrome) und andere Webplattform-APIs (z. B. Storage Access API) verfügbar sein. Wenn der Identitätsanbieter in Zukunft keinen Zugriff mehr auf Drittanbieter-Cookies hat und ein Nutzer noch nie zuvor über die FedCM-Benutzeroberfläche (z. B. durch Klicken auf die Schaltfläche Weiter als) eine explizite Berechtigung erteilt hat, wird er weiterhin als neuer Nutzer behandelt.
      Entwickler müssen nichts unternehmen. Hinweis: Durch diese Änderung kann der Ablauf für die automatische erneute Authentifizierung häufiger ausgelöst werden, wenn der Identitätsanbieter Zugriff auf Drittanbieter-Cookies hat und angibt, dass der Nutzer in der Vergangenheit ein Konto beim RP erstellt hat.

Chrome 120 (November 2023)

  • In Chrome 120 wurde die Unterstützung für die folgenden drei Funktionen hinzugefügt:
    • Login Status API: Die Login Status API ist ein Mechanismus, mit dem eine Website, insbesondere ein Identitätsanbieter, den Browser über den Anmeldestatus des Nutzers informiert. Mit dieser API kann der Browser unnötige Anfragen an den Identitätsanbieter reduzieren und potenzielle Timing-Angriffe abwehren. Die Login Status API ist für FedCM erforderlich. Durch diese Änderung ist das Flag chrome://flags/#fedcm-without-third-party-cookies nicht mehr erforderlich, um FedCM zu aktivieren, wenn Drittanbieter-Cookies blockiert sind.
    • Error API: Die Error API benachrichtigt den Nutzer, indem eine Browser-Benutzeroberfläche mit den vom IdP bereitgestellten Fehlerinformationen angezeigt wird.
    • Auto-Selected Flag API: Die Auto-Selected Flag API gibt sowohl an den IdP als auch an die RP an, ob eine explizite Nutzerberechtigung durch Tippen auf die Schaltfläche Continue as (Weiter als) erworben wurde, wenn eine automatische erneute Authentifizierung oder eine explizite Vermittlung stattgefunden hat. Die Freigabe erfolgt erst, nachdem die Nutzerberechtigung für die Kommunikation zwischen IdP und RP erteilt wurde.

Chrome 117 (September 2023)

Chrome 116 (August 2023)

  • In Chrome 116 wurden die folgenden drei Funktionen unterstützt:
    • Login Hint API: Geben Sie ein bevorzugtes Nutzerkonto an, mit dem angemeldet werden soll.
    • User Info API: Hiermit werden die Informationen des wiederkehrenden Nutzers abgerufen, damit der Identitätsanbieter (IdP) eine personalisierte Anmeldeschaltfläche in einem Iframe anzeigen kann.
    • RP Context API: Verwenden Sie im FedCM-Dialogfeld einen anderen Titel als „Anmelden“.
  • Ursprungstest für die IdP Sign-In Status API verfügbar Weitere Informationen finden Sie unter FedCM-Updates: IdP Sign-In Status API, Login Hint und mehr.

Chrome 115 (Juni 2023)

  • Unterstützung für die automatische erneute Authentifizierung hinzugefügt, mit der sich Nutzer nach der ersten Authentifizierung mit FedCM automatisch noch einmal authentifizieren können. Dies verbessert die Nutzerfreundlichkeit und ermöglicht eine optimierte erneute Authentifizierung beim RP nach der Erstauthentifizierung. Weitere Informationen zur automatischen Reauthentifizierung mit FedCM

Chrome 110 (Februar 2023)

  • Für den Endpunkt der ID-Bestätigung müssen IdPs den Origin-Header (anstelle des Referer-Headers) prüfen, um festzustellen, ob der Wert mit dem Ursprung der Client-ID übereinstimmt.
  • Die iframe-Unterstützung für FedCM ist jetzt plattformübergreifend verfügbar. Der Einbettungscode muss die Permissions-Policy identity-credentials-get angeben, um die FedCM API im eingebetteten iframe mit unterschiedlichen Ursprüngen zuzulassen. Hier finden Sie ein Beispiel für einen Cross-Origin-iFrame.
  • Neues Chrome-Flag chrome://flags/#fedcm-without-third-party-cookies hinzugefügt. Mit diesem Flag können Sie die FedCM-Funktionen in Chrome testen, indem Sie Drittanbieter-Cookies blockieren. Weitere Informationen finden Sie in der FedCM-Dokumentation.

Chrome 108 (Oktober 2022)

  • „Manifest auf oberster Ebene“ heißt jetzt im Dokument „Well-known File“. Es sind keine Implementierungsänderungen erforderlich.
  • „IdP-Manifest“ heißt im Dokument jetzt „Konfigurationsdatei“. Es sind keine Implementierungsänderungen erforderlich.
  • Die id_token_endpoint in der „Konfigurationsdatei“ wird in id_assertion_endpoint umbenannt.
  • Die Anfragen an den Identitätsanbieter enthalten jetzt einen Sec-Fetch-Dest: webidentity-Header anstelle eines Sec-FedCM-CSRF: ?1-Headers.

Chrome 105 (August 2022)

  • Dem Dokument wurden wichtige Sicherheitsinformationen hinzugefügt. Der Identitätsanbieter (IdP) muss prüfen, ob der Referer-Header mit dem Ursprung übereinstimmt, den die RP vorab am ID-Token-Endpunkt registriert hat.
  • Das Manifest der obersten Ebene wird von /.well-known/fedcm.json in /.well-known/web-identity umbenannt. Die in provider_urls angegebene URL sollte den Dateinamen enthalten.
  • Die Methoden login(), logout() und revoke() auf FederatedCredential-Instanzen sind nicht mehr verfügbar.
  • Die Federated Credential Management API verwendet jetzt den neuen Typ IdentityCredential anstelle von FederatedCredential. Diese Änderung kann für die Feature-Erkennung verwendet werden, ist ansonsten aber weitgehend unsichtbar.
  • Verschieben Sie die Anmeldefunktion von einer Kombination aus navigator.credentials.get() und FederatedCredential.prototype.login() zu navigator.credentials.get().
  • Der Widerrufsendpunkt im Manifest ist nicht mehr gültig.
  • Verwenden Sie für navigator.credentials.get()-Aufrufe ein identity-Feld anstelle eines federated-Felds.
  • url ist jetzt configURL und muss die vollständige URL für die Manifest-JSON-Datei anstelle des Pfads für einen navigator.credentials.get()-Aufruf sein.
  • nonce ist jetzt ein optionaler Parameter für navigator.credentials.get().
  • hint ist nicht mehr als Option für navigator.credentials.get() verfügbar.
const credential = await navigator.credentials.get({
  identity: {
    providers: [{
      configURL: 'https://idp.example/anything.json',
      clientId: '********',
      nonce: '******'
    }]
  }
});
const { token } = credential;

Chrome 104 (Juni 2022)

Chrome 103 (Mai 2022)

  • Unterstützt Desktopumgebungen.
  • Unterstützt Einstellungen pro RP auf dem Computer.
  • Der Endpunkt für Clientmetadaten ist jetzt optional. Bei diesem Endpunkt ist die URL der Datenschutzerklärung ebenfalls optional.
  • Im Dokument wurde ein Hinweis zur Verwendung von CSP connect-src hinzugefügt.

Ressourcen