Automatische erneute Authentifizierung in FedCM unterstützen

Chrome unterstützt die automatische erneute Authentifizierung in FedCM

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.

Mit FedCM kann der Browser den Kontext verstehen, in dem RP und IdP Informationen austauschen. Der Nutzer wird über die Information und Berechtigung informiert. Ebenen geteilt werden, um unbeabsichtigten Missbrauch zu verhindern. FedCM war bisher in folgenden Ländern verfügbar: Chrome seit Version 108.

In Chrome 115 erhält FedCM Unterstützung für die automatische erneute Authentifizierung, wodurch sich die Nutzererfahrung und ermöglicht eine optimierte erneute Authentifizierung beim RP. erst nach der ursprünglichen Einwilligung.

Automatische erneute Authentifizierung

Aktuell, nachdem ein Nutzer ein föderiertes Konto auf einem RP mit einem IdP erstellt hat über die FedCM API verwenden, die Website besuchen müssen, und führen dieselben Schritte auf der Benutzeroberfläche aus. Das bedeutet, dass der Nutzer explizit und manuell noch einmal bestätigen muss, noch einmal authentifizieren und mit dem Anmeldevorgang fortfahren.

Auch wenn die explizite User Experience sinnvoll ist, bevor die Nutzenden die föderiertes Konto, um Tracking zu verhindern (eines der Hauptziele von FedCM), Es ist unnötig umständlich, nachdem der Nutzer sie einmal durchgegangen ist: nach erteilt der Nutzer die Berechtigung, die Kommunikation zwischen dem RP und dem IdP zuzulassen. Es bringt keine Datenschutz- oder Sicherheitsvorteile mit sich, wenn ein anderer expliziter Nutzer durchgesetzt wird eine Bestätigung für etwas, das sie bereits bestätigt haben. Deshalb führen wir eine optimierte UX ein, die RPs auswählen können. für wiederkehrende Nutzende.

FedCM automatische erneute Authentifizierung (Kurz gesagt: Automatische erneute Authentifizierung) ermöglicht es Nutzern, sich automatisch erneut zu authentifizieren, wenn sie nach der ersten Authentifizierung mit FedCM wieder. „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">
</ph> Ein Dialogfeld, auf das der Nutzer tippt, um ein Konto zu erstellen oder sich zu authentifizieren.
Ein Dialogfeld, auf das der Nutzer tippt, um ein Konto zu erstellen oder sich zu authentifizieren.

Option für die automatische erneute Authentifizierung auswählen

Wir führen die automatische erneute Authentifizierung ein, um die Nutzerfreundlichkeit zu verbessern Spezifikation festgelegt ist, ändert sich die Standardeinstellung für die Nutzererfahrung, ohne dass Code erforderlich ist. ändern können. Wenn die automatische erneute Authentifizierung verfügbar ist, ändert sich das Browserverhalten je nach zur Option, die Sie in der Option mediation auswählen, die Entwickler mit navigator.credentials.get().

const cred = await navigator.credentials.get({
  identity: {
    providers: [{
      configURL: "https://idp.example/fedcm.json",
      clientId: "1234",
    }],
  },
  mediation: 'optional', // this is the default
});

Die mediation ist eine Property in der Anmeldedatenverwaltung. API, verhält es sich wie bei für PasswordCredential und FederatedCredential und wird teilweise von PublicKeyCredential . Die -Eigenschaft akzeptiert die folgenden vier Werte:

  • 'required': Die Vermittlung erfordert immer eine Vermittlung, z. B. das Klicken auf „Weiter“ auf der Benutzeroberfläche. Wählen Sie diese Option aus, wenn Ihre Nutzer die Berechtigung jedes Mal explizit zu erteilen, wenn eine Authentifizierung erforderlich ist.
  • 'optional'(Standard): Wenn möglich, automatische erneute Authentifizierung. Ist dies nicht der Fall, ist eine Vermittlung erforderlich. Mi. empfehlen wir, diese Option auf der Anmeldeseite zu wählen.
  • 'silent': wenn möglich, automatische erneute Authentifizierung, schlägt im Hintergrund fehl, ohne dass ein eine Schlichtung. Wir empfehlen, diese Option auf anderen Seiten als die spezielle Anmeldeseite, auf der die Nutzer angemeldet bleiben sollen, z. B. eine Artikelseite auf einer Versandwebsite oder eine Artikelseite in einer Website.
  • 'conditional': wird für WebAuthn verwendet und ist derzeit nicht für FedCM verfügbar.

Bei diesem Aufruf erfolgt die automatische erneute Authentifizierung unter folgenden Bedingungen:

  • FedCM kann verwendet werden. Der Nutzer hat FedCM beispielsweise nicht deaktiviert. entweder global oder für die RP in den Einstellungen.
  • Der Nutzer hat sich nur mit einem Konto mit der FedCM API auf dieser Website angemeldet Browser.
  • Der Nutzer ist mit diesem Konto beim IdP angemeldet.
  • Die automatische erneute Authentifizierung wurde in den letzten 10 Minuten nicht durchgeführt.
  • Die RP hat noch nicht angerufen Danach navigator.credentials.preventSilentAccess() der vorherigen Anmeldung.

Wenn die oben genannten Bedingungen erfüllt sind, wird ein Versuch zur erneuten Authentifizierung automatisch durchgeführt. Der Nutzer startet, sobald die FedCM-navigator.credentials.get() aufgerufen wird.

<ph type="x-smartling-placeholder">
</ph>
Die automatische Neuauthentifizierung eines Nutzers über FedCM.

Vermittlung mit preventSilentAccess() erzwingen

Eine automatische erneute Authentifizierung von Nutzern unmittelbar nach der Abmeldung ist nicht erforderlich, eine sehr gute User Experience bieten. Aus diesem Grund hat FedCM nach der Umstellung eine automatische erneute Authentifizierung, um dies zu verhindern. Das bedeutet, dass die automatische erneute Authentifizierung höchstens einmal alle 10 Minuten, es sei denn, der Nutzer meldet sich innerhalb 10 Minuten. Der RP sollte „navigator.credentials.preventSilentAccess()“ aufrufen, um den Browser explizit auffordern, die automatische erneute Authentifizierung zu deaktivieren, wenn sich ein Nutzer von explizit auf die RP, z. B. durch Klicken auf eine Abmeldeschaltfläche.

function signout() {
  navigator.credentials.preventSilentAccess();
  location.href = '/signout';
}

Nutzer können die automatische erneute Authentifizierung in den Einstellungen deaktivieren

Nutzer können die automatische erneute Authentifizierung in den Einstellungen deaktivieren:

  • Rufe in Chrome auf dem Computer chrome://password-manager/settings auf > Anmelden automatisch.
  • Öffne in Chrome auf Android die Einstellungen > Passwortmanager > Tippen Sie auf eine Zahnrad rechts oben > Automatische Anmeldung.

Wenn Sie die Ein/Aus-Schaltfläche deaktivieren, kann der Nutzer die automatische erneute Authentifizierung miteinander verbinden. Diese Einstellung wird geräteübergreifend gespeichert und synchronisiert, wenn der Nutzer auf der Chrome-Instanz in einem Google-Konto angemeldet sind und die Synchronisierung ist aktiviert.

Feedback geben

Wenn Sie FedCM testen, können Sie uns Feedback geben und uns mitteilen, welche Probleme auftreten. Rufen Sie crbug.com unter der Komponente Blink>Identity>FedCM auf.

Foto von Noah Samuel Franz auf Unsplash