FedCM: een API voor identiteitsfederatie die de privacy beschermt

Op deze pagina worden de voordelen van FedCM uitgelegd, voor wie de implementatie van FedCM overwogen zou moeten worden en hoe gebruikers met FedCM omgaan .

Federated Credential Management (FedCM) is een privacygerichte en gebruiksvriendelijke benadering van gefedereerde identiteitsservices (zoals Aanmelden met identiteitsprovider ) die niet afhankelijk is van cookies van derden of navigatieomleidingen.

Met FedCM krijgt de gebruiker een nieuwe manier om zich te verifiëren bij een externe identiteitsprovider op een website.

Wat is identiteitsfederatie?

Identiteitsfederatie delegeert de authenticatie of autorisatie van een individu (gebruiker of entiteit) aan een vertrouwde externe identiteitsprovider (IdP). De IdP staat de persoon vervolgens toe om in te loggen op een Relying Party Website (RP). Bij identiteitsfederatie vertrouwt een RP op een IdP om de gebruiker een account te verstrekken zonder dat een nieuwe gebruikersnaam en wachtwoord nodig zijn.

Met federatieve identiteitsoplossingen hoeft de gebruiker niet voor elke RP een nieuwe set inloggegevens aan te maken. Dit verbetert de gebruikerservaring, verkleint de kans op phishing en helpt de RP om geverifieerde gebruikersgegevens te verkrijgen van vertrouwde identiteitsproviders.

Conventionele oplossingen en cookies van derden

Conventionele identiteitsfederatiemechanismen zijn afhankelijk van iframes, redirects of cookies van derden, wat tot privacyproblemen leidt. Deze oplossingen kunnen worden misbruikt om gebruikers op het web te volgen, en browsers kunnen geen onderscheid maken tussen legitieme identiteitsdiensten en ongewenste surveillance.

Met het oog op privacy beperken veelgebruikte browsers cookies van derden. Dit kan van invloed zijn op sommige functionaliteiten. Dankzij de inspanningen van de community en ons onderzoek hebben we ontdekt dat een aantal integraties met betrekking tot identiteitsfederatie worden beïnvloed door beperkingen van cookies van derden.

Identiteitsfederatie met FedCM

FedCM is protocolonafhankelijk: het kan worden geïmplementeerd als een standalone oplossing of als een extra laag waar verschillende protocollen gebruik van kunnen maken. Een functionele OAuth- server kan bijvoorbeeld profiteren van de browsergestuurde one-tap login-ervaring en intuïtieve gebruikersinterface van FedCM door FedCM-eindpunten te implementeren en vervolgens de in de respons van FedCM geretourneerde autorisatiecode in te wisselen voor een OAuth-toegangstoken.

Waarom hebben we FedCM nodig?

Vergeleken met conventionele oplossingen biedt het meerdere voordelen voor het webecosysteem, omdat het is ontworpen met de gebruiker, de RP's en IdP's als ontwikkelaars in gedachten.

Ondersteuning voor identiteitsoplossingen zonder cookies van derden

FedCM kan de afhankelijkheid van cookies van derden, die vaak worden gebruikt om gebruikers op het web te volgen, verminderen. De API biedt een gepersonaliseerde inlogervaring, zelfs wanneer cookies van derden niet beschikbaar zijn (bijvoorbeeld in de incognitomodus).

FedCM is ook geïntegreerd met andere Privacy Sandbox API's. De Storage Access API gebruikt bijvoorbeeld FedCM-authenticatie als trustsignaal . Deze integratie is handig voor websites die zowel FedCM gebruiken voor authenticatie als de SAA om cross-origin iframes toegang te geven tot de benodigde opslagruimte.

Verbeterde gebruikerservaring

FedCM introduceert een browsergestuurde gebruikersinterface voor een vereenvoudigd inlogproces met één tik. De API lost ook het probleem van rommelige inlogpagina's op, ook wel het NASCAR-probleem genoemd.

Voorbeeld van het NASCAR-probleem: een website met een rommelige gebruikersinterface als gevolg van een selectie van zeven verschillende aanmeldopties.
Voorbeeld van het NASCAR-probleem: een website met een rommelige gebruikersinterface als gevolg van een te brede IdP-selectie.

In plaats van een overweldigend aantal sociale login-knoppen, biedt FedCM een eenvoudigere en gebruiksvriendelijkere interface .

Beveiliging

De Federated Identity-aanpak stelt gebruikers in staat om vertrouwde accounts te gebruiken die beheerd worden door IdP's. Met deze aanpak hoeven gebruikers niet voor elke site inloggegevens in te voeren. Dit verkleint de kans op phishingaanvallen. Bovendien kunnen RP's, in plaats van hun eigen robuuste beveiligingsmaatregelen te implementeren, vertrouwen op de expertise van IdP's die gespecialiseerd zijn in veilig identiteitsbeheer.

FedCM wil de gefedereerde identiteitsstroom nog gemakkelijker maken voor gebruikers en hen aanmoedigen om deze te verkiezen boven minder veilige identiteitsstromen.

Gepersonaliseerde ervaring voor meer gebruikers

FedCM vermindert de UX-problemen tijdens het aanmaken van een account. Casestudies van Google Identity Service laten zien dat gebruikers de voorkeur geven aan het aanmaken van een account met de One Tap-flow van FedCM boven de optie om in te loggen in meerdere stappen.

Met FedCM kunnen meer IdP's hun gebruikers een one-tap-inlogervaring bieden. Doordat meer IdP's een one-tap-identiteitsstroom aanbieden, kunnen gebruikers kiezen uit een bredere selectie IdP's op RP's. FedCM biedt een verbeterd IdP-selectiemechanisme door gebruikers de meest relevante accounts te presenteren.

Met hogere aanmeldingspercentages kunnen RP's een persoonlijkere ervaring bieden aan meer gebruikers.

Ondersteuning voor diverse identiteitsproviders

De vereenvoudigde gebruikersinterface van FedCM is bedoeld om gebruikers een gepersonaliseerde lijst met relevante IdP's te bieden. Met het IdP-selectiemechanisme van FedCM wordt de keuze van IdP's door RP niet langer beperkt door de omvang van de gebruikersbasis van de IdP. Zo kan een deel van de gebruikers bijvoorbeeld alleen een account hebben met small-idp.example en niet met bigger-idp.example .

Met de Multi-IdP-functie ondersteunt rp.example zowel small-idp.example als bigger-idp.example zonder de gebruikersinterface te overbelasten. Dit is gunstig voor alle partijen:

  • Gebruikers kunnen hun favoriete IdP kiezen, ongeacht hoe groot of klein deze is.
  • RP's bereiken meer gebruikers via diverse IdP-ondersteuning
  • IdP's met een kleinere gebruikersbasis zijn beschikbaar op meer RP's.

Voor wie is FedCM bedoeld?

Wij verwachten dat FedCM alleen nuttig voor u is als aan de volgende voorwaarden wordt voldaan:

  • U bent een identiteitsprovider (IdP) met RP's van derden.
  • U beschikt over uw eigen identiteitsoplossing en meerdere domeinen vertrouwen hierop.
  • U wilt gefedereerde identiteitsstromen ondersteunen, ook voor gebruikers die ervoor kiezen om te browsen zonder cookies van derden.

Je bent een IdP

FedCM vereist ondersteuning van een identiteitsprovider. Een vertrouwende partij kan FedCM niet zelfstandig gebruiken. Als u een identiteitsprovider bent, kunt u uw identiteitsprovider om instructies vragen.

Meerdere RP's

Als uw RP's van derden zijn of als er meer dan vier RP's gebruikmaken van uw identiteitsoplossing, is FedCM de aanbevolen API voor gefedereerde identiteit.

U streeft ernaar een cookieloze identiteitsfederatiestroom te ondersteunen

FedCM ondersteunt essentiële gefedereerde identiteitsstromen, zelfs voor gebruikers die browsen zonder cookies van derden. Met FedCM kunnen gebruikers zich nog steeds aanmelden, in- en uitloggen met hun gefedereerde accounts op RP's.

Daarnaast fungeert FedCM als een vertrouwenssignaal voor de Storage Access API, waardoor er geen problemen ontstaan ​​bij door de IdP geïnitieerde verzoeken voor toegang tot opslag.

Gebruikersinteractie met FedCM

FedCM is ontworpen om protocolonafhankelijk te zijn en biedt de gebruiker een nieuwe manier om te authenticeren bij een RP met een externe IdP. Probeer FedCM met onze demo .

Aanmelden bij een vertrouwende partij

Gebruikers kunnen een account kiezen uit een set IdP's die door de RP worden ondersteund. Als de gebruiker met meerdere IdP's is ingelogd, wordt hij of zij gevraagd om zich met een van deze IdP's bij de RP aan te melden.

De accounts van de gebruiker worden in de volgende volgorde weergegeven:

  • De accounts die op het apparaat van de gebruiker zijn geopend, worden als eerste weergegeven. De accounts die het laatst zijn geopend, worden bovenaan weergegeven.
  • Accounts die door de gebruiker op de RP zijn benaderd volgens de IdP, worden vervolgens weergegeven. De informatie over welke accounts zijn benaderd, wordt opgehaald uit de account-eindpunteigenschap approved_clients .
  • Rekeningen die nog niet eerder op de RP zijn gebruikt, worden als laatste weergegeven.

Als er meerdere accounts binnen een van deze prioriteitsniveaus zijn, worden deze accounts verder geordend op basis van de volgorde van IdP's die door de RP in de get() aanroep zijn opgegeven.

FedCM UI-modi

FedCM heeft twee gebruikersinterfacemodi: passief en actief .

Passieve modus . In de passieve modus is geen gebruikersinteractie vereist om de FedCM-prompt te laten verschijnen. Wanneer de gebruiker op de website van de Relying Party (RP) terechtkomt, verschijnt er een FedCM-aanmeldingsvenster wanneer navigator.credentials.get() wordt aangeroepen, mits aan de volgende voorwaarden is voldaan:

  • De gebruiker is aangemeld bij ten minste één van de ondersteunde IdP's. Als de gebruiker bij alle beschikbare IdP's is afgemeld, wordt de FedCM-aanmeldprompt niet automatisch weergegeven.
  • De FedCM-afkoelingsinstelling is niet ingesteld in de browser van de gebruiker.
  • De gebruiker heeft FedCM niet uitgeschakeld in zijn browserinstellingen . Lees meer over hoe gebruikers zich kunnen afmelden voor FedCM.
De gebruiker authenticeert zich in de passieve modus achtereenvolgens bij verschillende IdP's: hij meldt zich aan en af ​​bij de ene IdP en authenticeert vervolgens bij de volgende.

Actieve modus . In de actieve modus is een tijdelijke gebruikersactivering (zoals ' Aanmelden met...' op de knop klikken) vereist om een ​​FedCM-prompt te activeren.

Een gebruiker meldt zich aan bij een RP met behulp van FedCM in de actieve modus.

De gebruiker kan zich aanmelden door op Doorgaan als gebruiker te tikken. Als dit lukt, slaat de browser op dat de gebruiker een federatief account op de RP heeft aangemaakt met de IdP.

Als de gebruiker geen account op de RP bij de IdP heeft, verschijnt er een aanmeldingsdialoog met aanvullende informatie, zoals de servicevoorwaarden en het privacybeleid van de RP.

Naleving van ePrivacy-wetten

Het gebruik van FedCM, zowel als IdP als RP, omvat de opslag van informatie op de eindapparatuur van een gebruiker of de toegang tot informatie die daar al is opgeslagen. Dit is daarom een ​​activiteit die valt onder de ePrivacy-wetgeving in de Europese Economische Ruimte (EER) en het Verenigd Koninkrijk, waarbij doorgaans toestemming van de gebruiker vereist is. Het is uw verantwoordelijkheid om te bepalen of uw gebruik van FedCM strikt noodzakelijk is om een ​​onlinedienst te leveren die expliciet door de gebruiker is aangevraagd, en daarom is vrijgesteld van de toestemmingsvereiste.

Visie

We zijn actief bezig met de ontwikkeling van nieuwe functies om de huidige beperkingen aan te pakken en een betere gebruikerservaring te bieden.

  • We onderzoeken stillere UX-formules om een ​​soepel, intuïtief en minder opdringerig authenticatieproces voor de gebruikers te garanderen.
  • We zetten ons in voor het verbeteren van de privacy van gebruikers. We zijn van plan over te stappen op het delegatiegerichte NextGen FedCM-model, dat het IdP-trackingprobleem vermindert. Met NextGen kunnen gebruikers inloggen op RP's zonder dat de IdP de gebruiker volgt.
  • FedCM wil gebruikers een bredere selectie IdP's bieden, gebaseerd op de keuze van de RP. Om dit te bereiken, werken we aan de Multi-IdP en de IdP Registration API's.
  • We werken er actief aan om FedCM te integreren met andere authenticatiemethoden, zoals Passkeys, en met aanvullende middelen zoals Automatisch invullen. Zo creëren we een uniforme authenticatie-ervaring.

Zie onze routekaart voor meer details.