[ Web Proxy ]
URL:
Viewing: https://developer.mozilla.org/de/docs/Web/API/FedCM_API [Back]  [Original]

Federated Credential Management (FedCM) API - Web-APIs | MDN

Dieser Inhalt wurde automatisch aus dem Englischen bersetzt, und kann Fehler enthalten. Erfahre mehr ber dieses Experiment.

View in English Always switch to English

Federated Credential Management (FedCM) API

Eingeschrnkt verfgbar

Diese Funktion ist nicht Baseline, da sie in einigen der am weitesten verbreiteten Browser nicht funktioniert.

Want more browser support for this feature? Tell us why.

Experimentell: Dies ist eine experimentelle Technologie
berprfen Sie die Browser-Kompatibilittstabelle sorgfltig vor der Verwendung auf produktiven Webseiten.

Die Federated Credential Management API (oder FedCM API) bietet einen standardisierten Mechanismus fr Identity Provider (IdPs), um Identittsfederationsdienste auf dem Web in einer datenschutzfreundlichen Weise bereitzustellen, ohne die Notwendigkeit von Drittanbieter-Cookies und Redirects. Dies umfasst eine JavaScript-API, die die Nutzung von fderierter Authentifizierung fr Aktivitten wie Anmelden oder Registrieren auf einer Website ermglicht.

In diesem Artikel

FedCM-Konzepte

Identittsfederation ist die Delegation der Benutzer-Authentifizierung von einer Website, die Benutzerregistrierung oder -anmeldung erfordert, wie z.B. eine E-Commerce- oder Social-Networking-Seite (auch bekannt als relying party oder RP), an einen vertrauenswrdigen Drittanbieter-Identity-Provider (IdP) wie Google, Facebook/Meta, GitHub usw.

RPs knnen sich mit IdPs integrieren, was Benutzern ermglicht, sich mit den Konten anzumelden, die sie beim IdP registriert haben. Die Identittsfederation ber eine kleine Anzahl spezieller IdPs hat die Web-Authentifizierung in Bezug auf Sicherheit, Vertrauen der Konsumenten und Benutzererfahrung verbessert, im Vergleich dazu, dass jede Website ihre eigenen Anmeldedaten mit separaten Benutzernamen und Passwrtern verwaltet.

Das Problem besteht jedoch darin, dass die traditionelle Identittsfederation auf <iframe>s, Redirects und Drittanbieter-Cookies basiert, die auch fr das Drittanbieter-Tracking genutzt werden. Browser beschrnken die Nutzung dieser Funktionen, um die Privatsphre der Benutzer zu schtzen, was jedoch als Nebeneffekt die Implementierung von legitimen, nicht-trackenden Anwendungen, einschlielich der Identittsfederation, erschwert.

Dies betrifft die fderierte Anmeldung im Allgemeinen sowie spezifischere Anwendungsflle der Identittsfederation:

  • OIDC Front-Channel Logout: Dieser Ablauf erfordert, dass der IDP mehrere RP-<iframe>s einbettet, die auf RP-Cookies angewiesen sind.
  • Soziale Widgets: Um soziale Widgets bereitzustellen, muss das IdP-Drittanbieter-Cookie von der RP-Top-Level-Quelle bereitgestellt werden.
  • Personalisierte Schaltflchen: Die Anzeige personalisierter Anmeldeinformationen auf einem <button> in der RP-Quelle wird als IdP-<iframe> implementiert, das Drittanbieter-Cookies erfordert.
  • Sitzungsaktualisierung ohne Top-Level-Navigation oder Pop-ups.

FedCM zielt darauf ab, dieses Problem zu umgehen und bietet einen speziellen Mechanismus fr fderierte Identittsablufe im Web und ermglicht es untersttzenden Browsern, spezielle UI-Elemente auf RPs bereitzustellen, die Benutzern die Wahl eines IdP-Kontos zur Anmeldung ermglichen.

Es gibt zwei Teile zur Nutzung der FedCM API, die in den unten verlinkten Leitfden behandelt werden:

  1. IdP-Integration mit FedCM was ein Identity Provider bereitstellen muss, damit eine RP sich integrieren kann.
  2. RP fderierte Anmeldung die FedCM-Funktionalitt, die eine RP nutzen muss, um einen Benutzer mit seinem IdP-Konto anzumelden. Eine FedCM-Anmeldeanfrage wird mit der Methode navigator.credentials.get() gestartet.

Hinweis: Google Anmelden ist ein Beispiel fr einen IdP, der FedCM bereits untersttzt. Migration zu FedCM bietet Anweisungen fr RPs, die bestehende Apps, die Google Anmelden verwenden, zu fderierter Anmeldung migrieren mchten.

Integration der Permissions Policy und <iframe>-Untersttzung

Die identity-credentials-get Permissions-Policy kann verwendet werden, um die Berechtigung zur Nutzung von FedCM zu steuern. Genauer gesagt erlaubt sie die Nutzung der folgenden Methoden:

Entwickler knnen die Berechtigung fr ein <iframe> explizit ber das allow-Attribut erteilen:

html
<iframe src="3rd-party.example" allow="identity-credentials-get"></iframe>

Die Verfgbarkeit von FedCM innerhalb von <iframe>s ermglicht einige Anwendungsflle:

  • Grere Seiten mchten nicht, dass ein Drittanbieter-Anmeldeskript die Kontrolle ber den Top-Level-Frame erhlt; stattdessen mchten sie dieses Skript hinzufgen und FedCM aus einem <iframe> aufrufen.
  • Einige <iframes> knnen selbst fderierte Authentifizierung erfordern.

Schnittstellen

IdentityCredential

Reprsentiert ein Benutzeridentittsnachweis, das aus einer erfolgreichen fderierten Authentifizierung entsteht. Ein erfolgreicher Aufruf von navigator.credentials.get(), der eine identity-Option enthlt, erfllt sich mit einer IdentityCredential-Instanz.

IdentityCredentialError

Reprsentiert einen Authentifizierungsfehler, der darauf hinweist, dass die Benutzeragent nicht nach der Anforderung einer Authentizittsbesttigung durch den Benutzer eine Identittserklrung empfangen hat.

IdentityProvider

Reprsentiert einen IdP und bietet Zugriff auf zugehrige Informationen und Funktionalitten.

Definiert Anmeldefunktionalitt fr IdPs, einschlielich der Methode Navigator.login.setStatus() zum Aktualisieren des IdP-Anmeldestatus.

Erweiterungen fr andere Schnittstellen

CredentialsContainer.get(), die identity-Option.

identity ist ein Objekt, das Details zu fderierten IdPs enthlt, die eine relying party (RP) Website verwenden kann, um Benutzer anzumelden. Es bewirkt, dass ein get()-Aufruf eine Anfrage einleitet, damit ein Benutzer sich bei einer RP mit einem IdP anmeldet.

Bietet Zugriff auf das Navigator-Login-Objekt des Browsers.

HTTP-Header

Set-Login

Bietet einen HTTP-Mechanismus zum Aktualisieren des Anmeldestatus ber HTTP.

Beispiele

Fr Beispielcode siehe:

Spezifikationen

Spezifikation
Federated Credential Management API
# browser-api-identity-credential-interface

Browser-Kompatibilitt

Siehe auch


Web Proxy Viewer  |  New URL  |  Original Page