Wir führen einige Updates für FedCM ein, darunter ein neuer Ursprungstest für die automatische erneute Authentifizierung.
Die Federated Credential Management API (FedCM) ist eine Web-API zur datenschutzfreundlichen Identitätsföderation Bei der Identitätsföderation RP (vertrauenswürdige Partei) stützt sich auf einen IdP (Identitätsanbieter), um dem Nutzer eine ohne einen neuen Nutzernamen und ein neues Passwort zu benötigen.
FedCM ist eine speziell entwickelte API, die es dem Browser ermöglicht, den Kontext zu verstehen. Dabei informieren die RP- und IdP-Informationen den Nutzer Informationen und Berechtigungsstufen werden geteilt und verhindern so unbeabsichtigten Missbrauch.
Updates
Es gibt einige Änderungen an der FedCM-Implementierung in Chrome:
- Für die ID-Assertion
, müssen IdPs
prüfen Sie den
Origin
-Header (anstelle desReferer
-Headers), um zu sehen, ob der -Wert mit dem Ursprung der Client-ID übereinstimmt. - Ein neues Chrome-Flag
chrome://flags/#fedcm-without-third-party-cookies
hinzugefügt. Mit dieser Kennzeichnung können Sie die FedCM-Funktionalität in Chrome zu testen, Cookies.
Alle bisherigen API-Updates finden Sie unter Federated Credential Management API-Updates.
Die neueste Version von FedCM enthält eine neue Funktion zur automatischen erneuten Authentifizierung, mit der Nutzer automatisch neu authentifiziert werden können, wenn sie nach der anfänglichen Authentifizierung mit FedCM zurückkehren. Die automatische erneute Authentifizierung ist als Ursprungstest ab Chrome 112 verfügbar.
Automatische erneute Authentifizierung
Aktuell, nachdem ein Nutzer ein föderiertes Konto auf einem RP mit einem IdP erstellt hat über die FedCM bereitgestellt, Website, die sie benötigen, um dieselben Schritte in der Benutzeroberfläche zu durchlaufen. Das heißt, sie müssen explizit bestätigen und sich noch einmal authentifizieren, Fahren Sie mit der Anmeldung fort. Als eine der wichtigsten Ziel von FedCM ist es, verdecktes Tracking zu verhindern. Diese User Experience (UX) ist sinnvoll, bevor die Nutzer das föderierte Konto erstellt hat. Dies wird jedoch unnötig und umständlich, nachdem der Nutzer sie einmal erlebt haben. Nachdem der Nutzer die Berechtigung zum Zulassen der Kommunikation erteilt hat zwischen dem RP und dem IdP besteht, gibt es keine Datenschutz- oder Sicherheitsvorteile für Erzwingen einer weiteren ausdrücklichen Bestätigung durch den Nutzer für etwas, das er bereits bestätigt haben. Deshalb führt Chrome eine optimierte UX, die RPs für ihre wiederkehrenden Nutzer auswählen können.
Automatische erneute FedCM-Authentifizierung Nutzer werden automatisch neu authentifiziert (wenn RPs aktiviert werden). wenn er nach der ersten Authentifizierung mit FedCM zurückkehrt. „Der erste Authentifizierung“ bedeutet das, dass der Nutzer ein Konto erstellt oder sich auf der indem Sie im Anmeldedialogfeld von FedCM auf die Schaltfläche Weiter als... tippen. zum ersten Mal in derselben Browserinstanz ausgeführt werden.
<ph type="x-smartling-placeholder">
Der RP kann eine automatische erneute Authentifizierung anfordern, indem er navigator.credentials.get()
mit autoReauthn: true
aufruft.
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
},
});
Bei diesem Aufruf erfolgt die automatische erneute Authentifizierung unter den folgenden Bedingungen:
- FedCM kann verwendet werden. Der Nutzer hat FedCM auch nicht deaktiviert. global oder für das RP-System.
- Der Nutzer hat sich mit nur einem FedCM-Konto in diesem Browser auf der Website angemeldet.
- Der Nutzer ist mit diesem Konto beim IdP angemeldet.
- Die automatische erneute Authentifizierung wurde in den letzten 10 Minuten nicht durchgeführt.
Wenn die oben genannten Bedingungen erfüllt sind, wird bei einem Versuch, das
Der Nutzer startet, sobald die FedCM-navigator.credentials.get()
aufgerufen wird.
Jetzt ausprobieren
Sie können die automatische erneute FedCM-Authentifizierung lokal testen, indem Sie einen Chrome-Browser aktivieren
Flag chrome://flags#fedcm-auto-re-authn
an
Chrome 112 oder höher.
Zu Testzwecken können Sie den 10-minütigen Ruhezeitraum zurücksetzen, indem Sie Browserdaten.
- Rufen Sie
chrome://history
auf. - Gib im Feld „Suchverlauf“ den Ursprung der RP ein.
- Klicken Sie auf das Dreipunkt-Menü ⋮ und wählen Sie Aus Verlauf entfernen aus.
- Starten Sie Chrome neu.
Am Ursprungstest teilnehmen
Sie können die Funktion auch auf Ihrer Website aktivieren, indem Sie dem Drittanbieter Ursprungstest, verfügbar ab Chrome 112 über Chrome 114.
Mit Ursprungstests können Sie neue Funktionen ausprobieren und der Webstandard-Community Feedback zu ihrer Nutzerfreundlichkeit, Praktikumsbarkeit und Effektivität geben. Weitere Informationen finden Sie im Leitfaden zu Ursprungstests für Webentwickler. Wenn Sie sich für diesen oder einen anderen Ursprungstest registrieren möchten, rufen Sie die Registrierungsseite auf.
So registrieren Sie den Ursprung eines Drittanbieters: testen und die Funktion aktivieren zu Drittanbietern:
- Rufen Sie die Registrierungsseite für den Ursprungstest auf.
- Klicken Sie auf die Schaltfläche Registrieren und füllen Sie das Formular aus, um ein Token anzufordern.
- Geben Sie als Ursprung der Bereitstellung als Webursprung ein.
- Klicken Sie das Kästchen Drittanbieter-Abgleich an, um das Token mit JavaScript aus anderen Quellen zu injizieren.
- Klicken Sie auf Senden.
- Betten Sie das ausgestellte Token in einen Drittanbieter ein.
Fügen Sie Ihrem JavaScript-Code den folgenden Code hinzu, um das Token in einen Drittanbieter einzubetten Bibliothek oder SDK, die vom Ursprung der registrierten Website bereitgestellt wird.
const tokenElement = document.createElement('meta');
tokenElement.httpEquiv = 'origin-trial';
tokenElement.content = 'TOKEN_GOES_HERE';
document.head.appendChild(tokenElement);
Ersetzen Sie TOKEN_GOES_HERE
durch Ihr eigenes Token.
Interagieren und Feedback geben
Wenn Sie Feedback haben oder während des Tests Probleme auftreten, können Sie uns dies unter crbug.com mitteilen. unter der Komponente Blink > Identity > FedCM.