# DiscourseConnect einrichten – Offizielles Single-Sign-On für Discourse (sso)

**URL:** https://meta.discourse.org/t/setup-discourseconnect-official-single-sign-on-for-discourse-sso/13045
**Category:** Integrations
**Tags:** sso, discourseconnect, configuring, how-to
**Created:** [25. Februar 2014 um 08:30 UTC](https://meta.discourse.org/t/setup-discourseconnect-official-single-sign-on-for-discourse-sso/13045 "2014-02-25T08:30:34Z")
**Posts on this page:** 1
**Showing post:** 606

<div class="post-metadata">

### Author: ![simon](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/simon/32/339122_2.png) [@simon](https://meta.discourse.org/u/simon)
#### Post date: [26. April 2025 um 04:12 UTC](https://meta.discourse.org/t/setup-discourseconnect-official-single-sign-on-for-discourse-sso/13045/606 "2025-04-26T04:12:46Z")

</div>

Ich glaube, Ihre Hauptfrage bezieht sich auf das Feld `external_id`. Sie müssen ein Feld `external_id` in der [DiscourseConnect](https://meta.discourse.org/t/13045?silent=true)-Nutzlast festlegen. Der Wert des Feldes sollte eine Zeichenfolge sein, die mit dem Benutzer verknüpft ist und sich niemals ändert. Ich gehe davon aus, dass Ihre Anwendung eine Benutzertabelle hat. Der Primärschlüssel für den Eintrag eines Benutzers in dieser Tabelle wäre gut geeignet, um den Wert des Feldes `external_id` zu verwenden.

> [@Jules\_Olléon](#):
>
> Was passiert, wenn beim Erstellen eines Benutzers keine externe ID mit der E-Mail-Adresse verknüpft war? Wird dann die E-Mail-Adresse verwendet und die externe ID für zukünftige Anmeldungen mit dieser E-Mail-Adresse verknüpft?

Wenn ein Benutzer ein Konto in Discourse erstellt hat, bevor Sie die [DiscourseConnect](https://meta.discourse.org/t/13045?silent=true)-Authentifizierung von Ihrer Website aus hinzugefügt haben, versucht Discourse beim ersten Mal, wenn sich der Benutzer über [DiscourseConnect](https://meta.discourse.org/t/13045?silent=true) bei Discourse anmeldet, den Benutzer anhand der E-Mail-Adresse zu finden, die sich in der [DiscourseConnect](https://meta.discourse.org/t/13045?silent=true)-Nutzlast befindet. Nach dem Auffinden des Benutzers wird ein Eintrag in der Discourse-Datenbank hinzugefügt, der die `external_id` aus der [DiscourseConnect](https://meta.discourse.org/t/13045?silent=true)-Nutzlast enthält. Wenn sich der Benutzer das nächste Mal anmeldet, wird er anhand der `external_id` und nicht anhand der E-Mail-Adresse gefunden. (Beachten Sie, dass dies nicht funktioniert, wenn Sie den Parameter `require_activation` in der [DiscourseConnect](https://meta.discourse.org/t/13045?silent=true)-Nutzlast auf `true` setzen.)

> [@Jules\_Olléon](#):
>
> Was passiert, wenn es eine Diskrepanz zwischen `email` und `external_id` gibt (jeder ist mit einem anderen Discourse-Konto verknüpft)? Wird dann `external_id` oder `email` verwendet, um herauszufinden, bei welchem Benutzer angemeldet werden soll? Oder wird ein Fehler ausgegeben?

Discourse verfügt über gute Fallback-Mechanismen für die meisten Sonderfälle. Es gibt Probleme im Zusammenhang mit Benutzern, die mehrere Konten und E-Mail-Adressen haben, die Fehler auslösen können. Einige Details zur Behandlung dieser Fälle finden Sie hier: [Debuggen und Beheben häufiger DiscourseConnect-Probleme](https://meta.discourse.org/t/debug-and-fixing-common-discourseconnect-issues/103496).

---

_[View the full topic](https://meta.discourse.org/t/setup-discourseconnect-official-single-sign-on-for-discourse-sso/13045)._
