Zu FedCM migrieren

In diesem Leitfaden werden die durch die Federated Credentials Management API (FedCM) eingeführten Änderungen an Ihrer Webanwendung erläutert.

Wenn FedCM aktiviert ist, zeigt der Browser Nutzeraufforderungen an und es werden keine Drittanbieter-Cookies verwendet.

Überblick

Die Privacy Sandbox für das Web und die Entfernung von Drittanbieter-Cookies aus dem Web in Chrome führen zu signifikanten Änderungen bei den Google Identity Services und der Nutzeranmeldung.

FedCM ermöglicht privatere Anmeldevorgänge ohne den Einsatz von Drittanbieter-Cookies. Der Browser steuert die Nutzereinstellungen, zeigt Nutzeraufforderungen an und kontaktiert einen Identitätsanbieter wie Google nur, wenn der Nutzer ausdrücklich seine Einwilligung gegeben hat.

Bei den meisten Websites erfolgt die Migration nahtlos durch abwärtskompatible Aktualisierungen der JavaScript-Bibliothek der Google Identity Services.

Aktuelle Informationen zur automatischen Anmeldung

Die Betaversion von Federated Credential Management (FedCM) für Google Identity Services wurde im August 2023 eingeführt. Viele Entwickler haben die API getestet und wertvolles Feedback gegeben.

Eine Antwort, die Google von Entwicklern erhalten hat, bezieht sich auf die Anforderung von Nutzergesten für eine automatische FedCM-Anmeldung. Zur Verbesserung des Datenschutzes müssen Nutzer in Chrome in jeder Chrome-Instanz noch einmal bestätigen, dass sie sich mit ihrem Google-Konto auf der Website anmelden möchten, auch wenn der Nutzer die Website vor dem FedCM-Rollout genehmigt hat. Diese einmalige erneute Bestätigung erfolgt mit einem einzigen Klick auf die One Tap-Aufforderung, um dem Nutzer die Absicht der Anmeldung zu demonstrieren. Durch diese Änderung kann es bei einigen Websites zu einer Unterbrechung der Conversion-Raten bei automatischen Anmeldungen kommen.

In M121 hat Chrome vor Kurzem eine Änderung an der UX für die automatische Anmeldung in FedCM vorgenommen. Eine erneute Bestätigung ist nur erforderlich, wenn Drittanbieter-Cookies eingeschränkt werden. Das bedeutet:

  1. Bevor die Einschränkungen für Drittanbieter-Cookies im 3. Quartal 2024 auf 100% angehoben wurden, ist für die automatische FedCM-Anmeldung für wiederkehrende Nutzer keine erneute Bestätigung erforderlich. Wenn Nutzer eine erneute Bestätigung über die FedCM-UI vornehmen, wird diese noch einmal bei den Nutzergesten für die 3PCD-Ära berücksichtigt.

  2. Die automatische FedCM-Anmeldung prüft den Status der erneuten Bestätigung, wenn die Drittanbieter-Cookies von Nutzern heute oder standardmäßig in Chrome manuell eingeschränkt werden.

Aufgrund dieser Änderung empfehlen wir allen Entwicklern mit automatischer Anmeldung, so bald wie möglich zu FedCM zu migrieren, um Unterbrechungen bei Conversion-Raten für automatische Anmeldungen zu vermeiden.

Bei der automatischen Anmeldung löst GIS JavaScript FedCM nicht in einer älteren Chrome-Version (vor M121) aus, auch wenn sich Ihre Website für FedCM entscheidet.

Hinweis

Prüfen Sie, ob Ihre Browsereinstellungen und -version die FedCM API unterstützen. Eine Aktualisierung auf die neueste Version wird empfohlen.

  • Die FedCM API ist ab Chrome 117 verfügbar.

  • In Chrome ist die Einstellung Anmeldung über Drittanbieter aktiviert.

  • Wenn Sie die Chrome-Version 119 oder niedriger haben, öffnen Sie chrome://flags und aktivieren Sie die experimentelle Funktion FedCmWithoutThirdPartyCookies. Bei Chrome-Version 120 oder höher ist dieser Schritt nicht erforderlich.

Webanwendung migrieren

Führen Sie die folgenden Schritte aus, um FedCM zu aktivieren, potenzielle Auswirkungen auf die Migration zu bewerten und gegebenenfalls Änderungen an Ihrer vorhandenen Webanwendung vorzunehmen:

1. Fügen Sie ein boolesches Flag ein, um FedCM bei der Initialisierung zu aktivieren. Verwenden Sie dazu Folgendes:

2. Entfernen Sie die Verwendung der Methoden isDisplayMoment(), isDisplayed(), isNotDisplayed() und getNotDisplayedReason() in Ihrem Code.

Um den Datenschutz für Nutzer zu verbessern, gibt der google.accounts.id.prompt-Callback keine Anzeigemomente mehr im PromptMomentNotication-Objekt zurück. Entfernen Sie jeglichen Code, der von den Methoden für die Anzeigemomente abhängig ist. Es sind die Methoden isDisplayMoment(), isDisplayed(), isNotDisplayed() und getNotDisplayedReason().

3. Entfernen Sie die Verwendung der Methode getSkippedReason() in Ihrem Code.

Während der Moment des Überspringens (isSkippedMoment()) weiterhin vom google.accounts.id.prompt-Callback im PromptMomentNotication-Objekt aufgerufen wird, wird keine detaillierte Begründung angegeben. Entfernen Sie jeglichen Code, der von der Methode getSkippedReason() abhängt, aus Ihrem Code.

Beachte, dass die geschlossene Momentbenachrichtigung isDismissedMoment() und die zugehörige detaillierte Begründungsmethode getDismissedReason(), bei der Aktivierung von FedCM, unverändert bleiben.

4. position-Stilattribute aus data-prompt_parent_id und intermediate_iframes entfernen.

Der Browser steuert die Größe und Position von Nutzeraufforderungen. Benutzerdefinierte Positionen für One Tap auf Desktop-Computern werden nicht unterstützt.

5. Aktualisieren Sie das Seitenlayout bei Bedarf.

Der Browser steuert die Größe und Position von Nutzeraufforderungen. Je nach Layout einzelner Seiten werden einige Inhalte möglicherweise als benutzerdefinierte Positionen für One Tap auf dem Computer eingeblendet. Dies gilt beispielsweise für Stilattribute, data-prompt_parent_id, intermediate_iframes oder benutzerdefinierte iFrames.

Ändern Sie das Seitenlayout, um die Nutzerfreundlichkeit zu verbessern, wenn wichtige Informationen verdeckt werden. Gestalten Sie Ihre UX nicht um die One Tap-Aufforderung, auch wenn Sie davon ausgehen, dass sie sich in der Standardposition befindet. Da die FedCM API browservermittelt ist, können unterschiedliche Browseranbieter die Position der Aufforderung etwas anders platzieren.

6. Fügen Sie dem übergeordneten Frame das allow="identity-credentials-get"-Attribut hinzu, wenn Ihre Web-App die One Tap API über ursprungsübergreifende iFrames aufruft.

Ein iFrame wird als ursprungsübergreifend betrachtet, wenn sein Ursprung nicht genau mit dem übergeordneten Ursprung übereinstimmt. Beispiel:

  • Verschiedene Domains: https://example1.com und https://example2.com
  • Verschiedene Top-Level-Domains: https://example.uk und https://example.jp
  • Subdomains: https://example.com und https://login.example.com

    Um den Datenschutz für Nutzer zu verbessern, müssen Sie beim Aufrufen der One Tap API über ursprungsübergreifende iFrames in jedem übergeordneten iframe-Tag das allow="identity-credentials-get"-Attribut hinzufügen:

    <iframe src="https://your.cross-origin/onetap.page" allow="identity-credentials-get"></iframe>
    

    Wenn in Ihrer App ein iFrame verwendet wird, der einen weiteren iFrame enthält, muss das Attribut jedem iFrame hinzugefügt werden, einschließlich aller Sub-iFrames.

    Betrachten Sie beispielsweise das folgende Szenario:

  • Das oberste Dokument (https://www.example.uk) enthält einen iFrame namens „iFrame A“, in den eine Seite (https://logins.example.com) eingebettet ist.

  • Diese eingebettete Seite (https://logins.example.com) enthält außerdem einen iFrame mit dem Namen „iFrame B“, auf dem eine Seite (https://onetap.example2.com) eingebettet ist, auf der One Tap gehostet wird.

    Damit One Tap korrekt angezeigt wird, muss das Attribut sowohl zu den iFrame A- als auch zu den iFrame B-Tags hinzugefügt werden.

    Vorbereiten für Anfragen, bei denen die One Tap-Aufforderung nicht angezeigt wird. Andere Websites mit unterschiedlichen Ursprüngen können Ihre Seiten einbetten, die One Tap in ihren iFrames hosten. Möglicherweise erhalten Sie eine größere Anzahl von Support-Tickets für One Tap, die von Endnutzern oder anderen Websiteinhabern nicht angezeigt werden. Zwar können Aktualisierungen nur von den Websiteinhabern auf ihren Seiten vorgenommen werden, aber du kannst die Auswirkungen so verringern:

  • Erläutern Sie in Ihrer Entwicklerdokumentation, wie Sie den iFrame korrekt zum Aufrufen Ihrer Website einrichten. Sie können in Ihrer Dokumentation auf diese Seite verlinken.

  • Aktualisieren Sie gegebenenfalls die Seite mit häufig gestellten Fragen für Entwickler.

  • Informieren Sie das Supportteam über die anstehende Änderung und bereiten Sie sich frühzeitig auf die Antwort auf die Anfrage vor.

  • Wenden Sie sich proaktiv an betroffene Partner, Kunden oder Websiteinhaber, um eine reibungslose FedCM-Umstellung zu ermöglichen.

7. Fügen Sie diese Anweisungen zu Ihrer Content Security Policy (CSP) hinzu.

Dieser Schritt ist optional, da nicht alle Websites eine CSP definieren.

  • Wenn Sie die CSP auf Ihrer Website nicht verwenden, sind keine Änderungen erforderlich.

  • Wenn Ihre CSP für den aktuellen One Tap funktioniert und Sie connect-src, frame-src, script-src, style-src oder default-src nicht verwenden, sind keine Änderungen erforderlich.

  • Falls nicht, folge der Anleitung zum Einrichten der CSP. Ohne ordnungsgemäße Einrichtung der CSP würde FedCM One Tap nicht auf der Website angezeigt werden.

8. Entfernen Sie die Unterstützung für Accelerated Mobile Pages (AMP) für die Anmeldung.

Die Unterstützung der Nutzeranmeldung für AMP ist eine optionale Funktion von GIS, die in deiner Web-App möglicherweise implementiert ist. Wenn das der Fall ist,

Löschen Sie alle Verweise auf:

  • amp-onetap-google benutzerdefiniertes Element und

  • <script async custom-element="amp-onetap-google" src="https://cdn.ampproject.org/v0/amp-onetap-google-0.1.js"></script>

    Du kannst die Anmeldeanfragen von AMP an den HTML-Anmeldevorgang deiner Website weiterleiten. Das zugehörige Intermediate Iframe Support API ist davon nicht betroffen.