Die Federated Credential Management API ist in Chrome 108 enthalten, wird aber voraussichtlich weiter weiterentwickelt. Es sind keine funktionsgefährdenden Änderungen geplant.
An wen richten sich diese Neuerungen?
Diese Aktualisierungen sind in folgenden Fällen sinnvoll:
- Sie sind ein IdP, der die Federated Credential Management API verwendet.
- Sie sind ein IdP oder RP und möchten die API für Ihren Anwendungsfall erweitern. Sie haben z. B. die Diskussionen zum FedID-CG-Repository beobachtet oder daran teilgenommen und möchten wissen, welche Änderungen an der API vorgenommen wurden.
- Sie sind ein Browseranbieter und möchten den Implementierungsstatus der API auf dem Laufenden halten.
Wenn Sie diese API noch nicht kennen oder noch nicht damit experimentiert haben, lesen Sie die Einführung in die Federated Credential Management API.
Änderungsprotokoll
Wenn Sie über die Änderungen an der FedCM API auf dem Laufenden bleiben möchten, lesen Sie unseren Blog oder den Newsletter.
Chrome 125 (April 2024)
- Da die Spezifikation den Namen von „accounts list endpunkte“ in „accounts endpoint“ (Konten-Endpunkt) aktualisiert hat, ist unsere Dokumentation entsprechend angeglichen.
- Der Ursprungstest für die Button Mode API ist für die Chrome-Desktopversion 125 verfügbar. Weitere Informationen finden Sie unter FedCM-Updates: Button Mode API-Ursprungstest, CORS und SameSite.
- CORS wird ab Chrome 125 auf dem Endpunkt der ID-Assertion erzwungen.
- Chrome sendet ab Chrome 125 nur Cookies, die explizit als
SameSite=None
gekennzeichnet sind, an den Endpunkt für die ID-Assertion und den Kontoendpunkt.
Chrome 123 (Februar 2024)
- Die Domain Hint API wird jetzt unterstützt. Mit der Domain Hint API können RPs bei einem FedCM API-Aufruf eine
domainHint
-Eigenschaft angeben, damit nur übereinstimmende Konten für den Nutzer angezeigt werden.
Chrome 122 (Januar 2024)
- Die Verbindungs-API wird jetzt unterstützt. Mit der Verbindung trennen-API können RPS ihre Nutzer vom Konto des IdP trennen, ohne auf Drittanbieter-Cookies zurückgreifen zu müssen.
- Die Prüfung
/.well-known/web-identity
wird jetzt übersprungen, wenn sich der RP und der IdP am selben Standort befinden. - Unterressourcen können jetzt einen Anmeldestatus für dieselbe Website festlegen.
Chrome 121 (Dezember 2023)
- Die lockere Bedingung zum Auslösen der automatischen FedCM-Authentifizierung:
- 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 über FedCM im RP anmelden muss, bevor die automatische Authentifizierung ausgelöst werden kann. Diese Bedingung wurde ursprünglich eingeführt, um das Risiko von Trackern zu minimieren, die vorgeben, ein Identitätsanbieter (Identity Provider, IdP) zu sein, und den Browser dazu verleiten, einen Nutzer ohne sein Wissen oder seine Zustimmung automatisch neu zu authentifizieren. Dieses Design kann jedoch keinen Datenschutzvorteil garantieren, wenn der Tracker Zugriff auf Drittanbieter-Cookies im RP-Kontext hat. FedCM bietet nur einen Teil der Funktionen, die über Drittanbieter-Cookies möglich sind. Wenn der Tracker also bereits Zugriff auf Drittanbieter-Cookies im RP-Kontext hat, stellt der Zugriff auf FedCM kein zusätzliches Datenschutzrisiko dar.
Da es eine legitime Verwendung von Drittanbieter-Cookies gibt und das Lockern der Bedingungen die Nutzerfreundlichkeit verbessern würde, ändert sich dieses Verhalten gegenüber Chrome 121. Wir haben beschlossen, die Einschränkung der Bedingung, einen Nutzer als „wiederkehrend“ zu behandeln, zu lockern: Wenn dem IdP Drittanbieter-Cookies im RP-Kontext zur Verfügung stehen, vertraut Chrome der Aussage des IdP in Bezug auf den über dieapproved_clients
-Liste angegebenen Kontostatus des Nutzers und löst gegebenenfalls die automatische erneute Authentifizierung aus. Drittanbieter-Cookies können über Nutzereinstellungen, Unternehmensrichtlinien, Heuristiken (Safari, Firefox, Chrome) und andere Webplattform-APIs (z. B. die Storage Access API) zur Verfügung gestellt werden. Wenn der IdP in Zukunft den Zugriff auf Cookies von Drittanbietern verliert und ein Nutzer zuvor noch nie eine Berechtigung auf der FedCM-Benutzeroberfläche erteilt hat (z. B. durch Klicken auf die Schaltfläche Weiter als), wird er dennoch als neuer Nutzer behandelt.
Der Entwickler muss nichts weiter tun. Der Ablauf für die automatische Authentifizierung kann durch diese Änderung häufiger ausgelöst werden, wenn der IdP Zugriff auf Drittanbieter-Cookies hat und angibt, dass der Nutzer in der Vergangenheit ein Konto im RP erstellt hat.
- 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 über FedCM im RP anmelden muss, bevor die automatische Authentifizierung ausgelöst werden kann. Diese Bedingung wurde ursprünglich eingeführt, um das Risiko von Trackern zu minimieren, die vorgeben, ein Identitätsanbieter (Identity Provider, IdP) zu sein, und den Browser dazu verleiten, einen Nutzer ohne sein Wissen oder seine Zustimmung automatisch neu zu authentifizieren. Dieses Design kann jedoch keinen Datenschutzvorteil garantieren, wenn der Tracker Zugriff auf Drittanbieter-Cookies im RP-Kontext hat. FedCM bietet nur einen Teil der Funktionen, die über Drittanbieter-Cookies möglich sind. Wenn der Tracker also bereits Zugriff auf Drittanbieter-Cookies im RP-Kontext hat, stellt der Zugriff auf FedCM kein zusätzliches Datenschutzrisiko dar.
Chrome 120 (November 2023)
- In Chrome 120 werden jetzt die folgenden drei Funktionen unterstützt:
- Login Status API: Die Login Status API ist ein Mechanismus, mit dem eine Website – insbesondere ein IdP – den Browser des Nutzers über den Anmeldestatus informiert. Mit dieser API kann der Browser unnötige Anfragen an den IdP reduzieren und potenzielle Timing-Angriffe abschwächen. Die Login Status API ist eine Voraussetzung für FedCM.
Mit dieser Änderung ist das Flag
chrome://flags/#fedcm-without-third-party-cookies
nicht mehr erforderlich, um FedCM zu aktivieren, wenn Drittanbieter-Cookies blockiert werden. - Error API: Die Error API benachrichtigt den Nutzer über eine Browser-UI mit den vom IdP bereitgestellten Fehlerinformationen.
- Auto-Selected Flag API: Die Auto-Selected Flag API gibt an, ob beim IdP und RP eine explizite Nutzerberechtigung durch Tippen auf die Schaltfläche Weiter als abgerufen wurde, wenn eine automatische Authentifizierung oder eine explizite Vermittlung erfolgt ist. Die Freigabe erfolgt erst, nachdem die Nutzerberechtigung für die IdP- und RP-Kommunikation gewährt wurde.
- Login Status API: Die Login Status API ist ein Mechanismus, mit dem eine Website – insbesondere ein IdP – den Browser des Nutzers über den Anmeldestatus informiert. Mit dieser API kann der Browser unnötige Anfragen an den IdP reduzieren und potenzielle Timing-Angriffe abschwächen. Die Login Status API ist eine Voraussetzung für FedCM.
Mit dieser Änderung ist das Flag
Chrome 117 (September 2023)
- Der Ursprungstest für die Idp Sign-In Status API ist unter Android ab Chrome 117 verfügbar. Weitere Informationen finden Sie unter FedCM-Updates: IdP Sign-In Status API, Log-in-Hinweis und mehr.
Chrome 116 (August 2023)
- In Chrome 116 werden jetzt die folgenden drei Funktionen unterstützt:
- Login Hint API: Geben Sie ein bevorzugtes Nutzerkonto für die Anmeldung an.
- User Info API: Ruft die Informationen des wiederkehrenden Nutzers ab, damit der Identitätsanbieter (Identity Provider, IdP) eine personalisierte Anmeldeschaltfläche in einem iFrame rendern kann.
- RP Context API: Verwenden Sie im FedCM-Dialogfeld einen anderen Titel als „Sign in“ (Anmelden).
- Ein Ursprungstest für die IdP Sign-In Status API ist verfügbar. Weitere Informationen finden Sie unter FedCM-Updates: IdP Sign-In Status API, Log-in-Hinweis und mehr.
Chrome 115 (Juni 2023)
- Die automatische erneute Authentifizierung wird jetzt unterstützt, sodass sich Nutzer automatisch neu authentifizieren können, wenn sie nach der ersten Authentifizierung mit FedCM zurückkommen. Dies verbessert die Nutzerfreundlichkeit und ermöglicht eine optimierte erneute Authentifizierung beim RP nach der ersten Authentifizierung. Weitere Informationen zur automatischen erneuten Authentifizierung durch FedCM
Chrome 110 (Februar 2023)
- Beim Endpunkt der ID-Assertion müssen IdPs den
Origin
-Header (anstelle desReferer
-Headers) prüfen, um festzustellen, ob der Wert mit dem Ursprung der Client-ID übereinstimmt. - Die ursprungsübergreifende iFrame-Unterstützung für FedCM ist jetzt verfügbar. Der Einbettunger sollte die Permissions-Policy
identity-credentials-get
angeben, damit die FedCM API im eingebetteten ursprungsübergreifenden iFrame zulässig ist. Hier findest du ein Beispiel für einen ursprungsübergreifenden iFrame. - Das neue Chrome-Flag
chrome://flags/#fedcm-without-third-party-cookies
wurde hinzugefügt. Mit diesem Flag können Sie die FedCM-Funktionalität in Chrome testen, indem Sie Drittanbieter-Cookies blockieren. Weitere Informationen finden Sie in der FedCM-Dokumentation.
Chrome 108 (Oktober 2022)
- „Top-Level-Manifest“ wird im Dokument jetzt als „Well-known-Datei“ bezeichnet. Es sind keine Implementierungsänderungen erforderlich.
- „IdP-Manifest“ heißt im Dokument jetzt „config file“. Es sind keine Implementierungsänderungen erforderlich.
id_token_endpoint
in der Konfigurationsdatei wird inid_assertion_endpoint
umbenannt.- Die Anfragen an den IdP enthalten jetzt einen
Sec-Fetch-Dest: webidentity
-Header anstelle einesSec-FedCM-CSRF: ?1
-Headers.
Chrome 105 (August 2022)
- Dem Dokument wurden wichtige Sicherheitsinformationen hinzugefügt. Der Identitätsanbieter (Identity Provider, IdP) muss prüfen, ob der Header
Referer
mit dem Ursprung übereinstimmt, den die RP im Voraus auf dem ID-Tokenendpunkt registriert hat. - Das Manifest der obersten Ebene wird von
/.well-known/fedcm.json
in/.well-known/web-identity
umbenannt und die inprovider_urls
angegebene URL sollte den Dateinamen enthalten. - Die Methoden
login()
,logout()
undrevoke()
fürFederatedCredential
-Instanzen sind nicht mehr verfügbar. - Die Federated Credential Management API verwendet jetzt den neuen Typ
IdentityCredential
anstelle vonFederatedCredential
. Sie kann zur Merkmalserkennung verwendet werden, ist ansonsten jedoch weitgehend unsichtbar. - Verschieben Sie die Anmeldefunktion von einer Kombination aus
navigator.credentials.get()
undFederatedCredential.prototype.login()
nachnavigator.credentials.get()
. - Der Widerrufsendpunkt im Manifest ist nicht mehr gültig.
- Verwenden Sie für
navigator.credentials.get()
-Aufrufe einidentity
-Feld anstelle einesfederated
-Felds. url
lautet jetztconfigURL
und muss die vollständige URL für die JSON-Manifestdatei anstelle des Pfads für einennavigator.credentials.get()
-Aufruf sein.nonce
ist jetzt ein optionaler Parameter fürnavigator.credentials.get()
.hint
ist nicht mehr als Option fürnavigator.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)
- Der an den Endpunkt des ID-Tokens gesendete
consent_acquired
-Parameter lautet jetztdisclosure_text_shown
. Der Wert bleibt unverändert. - Branding-Symbole im IdP-Manifest unterstützen keine SVG-Bilder mehr, müssen aber nicht mehr durch die Content Security Policy des RP zugelassen werden.
Chrome 103 (Mai 2022)
- Unterstützt Desktopumgebungen.
- Unterstützt Einstellungen pro RP auf dem Computer.
- Der Clientmetadatenendpunkt ist jetzt optional. Bei diesem Endpunkt ist auch die URL der Datenschutzerklärung optional.
- Ein Hinweis zur Verwendung der CSP „
connect-src
“ im Dokument wurde hinzugefügt.