Anmeldung per OpenID Connect
Ihre Nutzer können sich mit einem Konto anmelden, das sie bereits anderswo haben. Jeder Identity-Provider, der ein OpenID-Connect-Discovery-Dokument veröffentlicht, funktioniert, und Fóir führt den Austausch mit ihm durch.
Was Sie angeben
Sie hinterlegen einen Anbieter in der Konsole, über die CLI oder in Ihrer Config-Datei. Eine Anmeldung braucht die Discovery-URL des Anbieters, Ihre Client-ID und eine Redirect-URI und wird abgelehnt, wenn eines der drei fehlt. Ein Client-Secret ist optional, und die angeforderten Scopes lauten standardmäßig openid email.
Fóir führt keinen Katalog benannter Anbieter. Jeder, den Sie hinzufügen, hat einen Schlüssel, einen Anzeigenamen und eine Priorität, die die Schaltflächen ordnet.
Was Fóir tut
Fóir liest das Discovery-Dokument des Anbieters, erzeugt das PKCE-Paar und den State-Wert und gibt die Autorisierungs-URL des Anbieters zurück. Kommt der Nutzer zurück, tauscht es den Code ein, verifiziert das ID-Token und liest die E-Mail-Adresse und den stabilen Subject-Identifier des Anbieters.
Wie eine Person einem Konto zugeordnet wird
Ein wiederkehrender Nutzer wird über den Subject-Identifier zugeordnet, sodass eine geänderte E-Mail-Adresse beim Anbieter weiterhin demselben Konto zugeordnet wird. Eine erste Anmeldung mit einer unbekannten E-Mail-Adresse legt ein Konto ohne Passwort an, vorbehaltlich des Registrierungsmodus des Projekts und des Limits aktiver Nutzer Ihres Tarifs.
Stimmt die E-Mail-Adresse mit einem bestehenden Konto überein, wird der Anbieter nur angehängt, wenn dieses Konto kein Passwort hat und der Anbieter die E-Mail-Adresse verifiziert hat. Andernfalls wird die Anmeldung mit einer Meldung abgelehnt, die den Nutzer auffordert, sich mit seiner bestehenden Methode anzumelden.
Wo die Schaltflächen erscheinen
Die gehostete Anmeldung zeigt für jeden aktivierten Anbieter eine Schaltfläche. In Ihrer eigenen Oberfläche listet die Abfrage authProviders sie auf, und zwei Mutationen starten und schließen die Anmeldung ab und geben dieselben Tokens zurück wie jede andere Methode.
Einen Anbieter ausblenden oder abschalten
Eine Anmelde-App kann einen Anbieter für sich ausblenden. Einen für das ganze Projekt abzuschalten, wirkt mit dem nächsten Release, oder sofort mit foir push --publish.
Details nachlesen
Der Anmeldeleitfaden behandelt das Hinzufügen eines Anbieters in der Konsole und über die CLI sowie die API-Aufrufe für eine Anbieteranmeldung in Ihrer eigenen Oberfläche.