Login with Posty5 in Ihre Website oder App einbauen

Lassen Sie Nutzer sich mit ihrem Posty5-Konto auf Ihrer Website anmelden, wie mit Google: OpenID Connect, ein Zustimmungsbildschirm und fertige Pakete für Node.js und Angular.

ADWerbung
Login with Posty5 in Ihre Website oder App einbauen

Jedes neue Registrierungsformular verlangt ein weiteres Passwort, und jedes Passwort, das Sie speichern, müssen Sie zusätzlich schützen. Mit Login with Posty5 melden sich Menschen mit dem Posty5-Konto, das sie bereits haben, auf Ihrer Website oder in Ihrer App an, genau so, wie sie Mit Google anmelden wählen würden.

Dieser Artikel erklärt, was Ihre Nutzer sehen, was Sie als Entwickler bekommen und mit welchen vier Schritten Sie es einbauen. Er gehört zur Entwicklerplattform von Posty5, die im Leitfaden zu API-Schlüsseln und SDKs beschrieben ist.

Was Login with Posty5 ist

Posty5 ist jetzt ein OAuth 2.0- und OpenID Connect-Anbieter. Sie registrieren Ihre App in Posty5 Studio, schicken Nutzer zur Anmeldung zu Posty5 und erhalten ein signiertes ID-Token zurück, das Ihrem Server mitteilt, wer sie sind. Ihre Website sieht ihr Posty5-Passwort nie.

Weil es dem Standard folgt, funktioniert es mit den Posty5-Paketen für Node.js und Angular und mit jeder zertifizierten OpenID Connect-Bibliothek, etwa für ASP.NET Core, Python, PHP oder Java. Das Registrieren von Apps und das Anmelden von Nutzern verbraucht in keinem Tarif Credits.

Was Ihre Nutzer sehen

  • Eine Schaltfläche Login with Posty5 oder Weiter mit Posty5 auf Ihrer Anmeldeseite.
  • Die eigene Anmeldeseite von Posty5, falls sie noch nicht angemeldet sind: Das Passwort wird nur auf posty5.com eingegeben.
  • Einen Zustimmungsbildschirm mit Name, Logo, Website, Datenschutzerklärung und Nutzungsbedingungen Ihrer App, einer Zeile für jede angefragte Angabe sowie den Schaltflächen Zulassen und Abbrechen.
  • Ihre Entscheidung wird gespeichert: Die nächste Anmeldung geht direkt durch. Den Zugriff Ihrer App können sie jederzeit unter Konto und dann Verbundene Apps entfernen.

Den vollständigen Ablauf aus Nutzersicht beschreibt Was ist Login with Posty5, und sind meine Daten sicher?, und Sie können diesen Artikel von Ihrer eigenen Anmeldeseite aus verlinken.

Was Sie als Entwickler bekommen

  • Standard-OpenID Connect: den Authorization-Code-Flow mit PKCE als Pflicht bei jeder Anmeldung und ein Discovery-Dokument, aus dem sich die meisten Bibliotheken selbst konfigurieren.
  • Signierte ID-Tokens (RS256) mit Name, Bild und E-Mail-Adresse des Nutzers und der Angabe, ob die E-Mail-Adresse bestätigt ist, nur für die Scopes, die der Nutzer erlaubt hat.
  • Eine private Nutzer-ID für Ihre App. Der Wert sub ist für Ihre App stabil und in den Apps anderer Entwickler ein anderer, sodass Apps Nutzer nicht untereinander abgleichen können.
  • @posty5/oauth für Node.js-Back-ends, mit signierten Anmeldelinks ohne Sitzungsspeicher, und @posty5/oauth-angular, eine anpassbare Schaltfläche Weiter mit Posty5 für Angular.
  • Anmeldung im Browser für reine Front-end-Apps: pro App einschaltbar und nur von den Website-Origins akzeptiert, die Sie eintragen.
  • Einen Tab Nutzer für jede App in Posty5 Studio und einen der App hinzugefügten API-Schlüssel, der dieselbe Liste von Ihrem Server aus abruft.

In vier Schritten eingebaut

  1. Öffnen Sie in Posty5 Studio das Developers Kit, dann OAuth-Apps, und wählen Sie App registrieren. Geben Sie Name, Logo und Links ein, die Nutzer sehen sollen, und Ihre Callback-Adresse als Redirect-URI.
  2. Kopieren Sie die Client-ID und das Client-Secret in die Konfiguration Ihres Servers. Das Secret wird nur einmal angezeigt; Sie können es später erneuern.
  3. Installieren Sie @posty5/oauth und legen Sie zwei Routen an: eine, die einen Anmeldelink erzeugt und den Nutzer zu Posty5 schickt, und Ihren Callback, der das Ergebnis prüft.
  4. Setzen Sie eine Schaltfläche Login with Posty5 auf Ihre Anmeldeseite, melden Sie sich einmal selbst an und verknüpfen Sie Ihre Nutzerdatensätze mit dem sub, den Sie erhalten.
const link = await posty5.createLoginLink({ returnTo: "/account" });
res.cookie("p5_binding", link.binding, { httpOnly: true, secure: true, sameSite: "lax" });
res.redirect(link.url);

// on your redirect URI
const { claims, returnTo } = await posty5.handleLoginCallback(req.query, { binding: req.cookies.p5_binding });

Der Anmeldelink trägt den PKCE-Verifier, die Nonce und Ihre Rücksprungadresse in einem versiegelten State, sodass Ihr Server zwischen den beiden Anfragen nichts speichert, und ein Cookie bindet den Link an den Browser, der ihn angefordert hat.

Registrieren Sie Ihre erste OAuth-App

Legen Sie die App in Posty5 Studio an, kopieren Sie ihre Zugangsdaten und testen Sie eine Anmeldung auf Ihrer eigenen Website.

Die passende Integration wählen

  • Eine Website mit Node.js-Back-end: Verwenden Sie @posty5/oauth. Das Client-Secret bleibt auf Ihrem Server.
  • Eine Angular-App: Verwenden Sie die Schaltfläche aus @posty5/oauth-angular und lassen Sie Ihr Back-end die Anmeldung durchführen. Siehe wie Sie eine Schaltfläche Weiter mit Posty5 in Angular einbauen.
  • Eine statische App ohne Back-end: Schalten Sie die Anmeldung im Browser für die App ein, tragen Sie die Origins Ihrer Website ein und nutzen Sie den Modus browser des Angular-Pakets oder einen beliebigen OpenID Connect-Client mit PKCE-Unterstützung.
  • Jede andere Sprache: Richten Sie Ihre OpenID Connect-Bibliothek mit Ihrer Client-ID und Ihrem Secret auf https://api.posty5.com aus.

Grenzen, die Sie vorher kennen sollten

  • Es gibt keine Refresh-Tokens. Das Access-Token gilt 1 Stunde, führen Sie nach der Anmeldung also eine eigene Sitzung.
  • Eine stille Anmeldung (prompt=none) wird nicht angeboten. Eine neue Anmeldung erzwingen Sie mit prompt=login oder max_age.
  • Login with Posty5 teilt nur die Identität: Name, Bild und E-Mail-Adresse. Ihre App erhält keinen Zugriff auf die Posty5-Inhalte des Nutzers.
  • Ein Konto kann bis zu 20 OAuth-Apps registrieren, jede mit bis zu 10 exakten Redirect-URIs.

Häufige Fragen

Verbraucht Login with Posty5 Credits?

Nein. Das Registrieren von OAuth-Apps und das Anmelden von Nutzern verbraucht in keinem Tarif Credits.

Welche Daten kann meine App erhalten?

Nur das, was der Nutzer erlaubt: immer eine Nutzer-ID für Ihre App, Name und Profilbild mit dem Scope profile sowie die E-Mail-Adresse und ob sie bestätigt ist mit dem Scope email.

Kann ich es ohne Back-end verwenden?

Ja. Schalten Sie die Anmeldung im Browser für die App ein und tragen Sie die Origins Ihrer Website ein. Der Browser tauscht den Code dann mit PKCE und ohne Client-Secret ein. Wenn Sie ein Back-end haben, ist es trotzdem der bessere Ort für die Anmeldung.

Warum ist die Nutzer-ID in meiner anderen App eine andere?

Der Wert sub ist pairwise: Er hängt vom Host der ersten Redirect-URI jeder App ab, sodass Apps verschiedener Entwickler Nutzer nicht abgleichen können. Apps, die mit demselben Host registriert sind, erhalten denselben Wert.

Kann ich sehen, wer sich bei meiner App angemeldet hat?

Ja. Jede App hat in Posty5 Studio einen Tab Nutzer, und ein der App hinzugefügter API-Schlüssel ruft dieselbe Liste von Ihrem Server aus ab, nur mit dem, was der jeweilige Nutzer geteilt hat.

Was passiert, wenn ein Nutzer den Zugriff entfernt?

Ihre Access-Tokens für diesen Nutzer funktionieren nicht mehr, der Nutzer verschwindet aus Ihrer Nutzerliste und bei seiner nächsten Anmeldung erscheint wieder der Zustimmungsbildschirm. Sein Konto auf Ihrer Website bleibt davon unberührt.

ADWerbung