Discourse GitHub Verifizierung

|||
-|-|-|
:discourse2: | Zusammenfassung | Überprüft, ob ein Benutzer ein bestimmtes GitHub-Konto besitzt
:hammer_and_wrench: | Repository-Link | GitHub - discourse/discourse-github-verification: Verifies that a Discourse user is the owner of a Github account
:open_book: | Installationsanleitung | So installieren Sie Plugins in Discourse

Funktionen

Dieses Plugin ermöglicht es Benutzern, die Zugehörigkeit zu einem bestimmten GitHub-Konto zu verifizieren. Dies ist getrennt von der Anmeldung mit GitHub. Es zeigt lediglich einen Link zum GitHub-Konto eines Benutzers auf seiner Benutzerkarte und seinem Profil an.

Ein neuer Reiter (GitHub) wird zu den Benutzereinstellungen hinzugefügt. Es gibt eine Schaltfläche, um das Konto mit GitHub zu verbinden, wenn der Benutzer sein Konto noch nicht verbunden hat. Wenn der Benutzer sein Konto verbunden hat, sieht er einen Link zu seinem GitHub-Konto und eine Schaltfläche, um sein GitHub-Konto von seinem Discourse-Profil zu trennen.

Wenn ein Benutzer ein verbundenes GitHub-Konto hat, wird ein Link auf seiner Benutzerkarte und seinem Benutzerprofil angezeigt.

Das Plugin fügt einen Admin-API-Endpunkt /github-verification/users.json hinzu, der ein Array aller Benutzer mit einem verbundenen GitHub-Konto zurückgibt. Die Antwort sieht wie folgt aus:

[
  {
    "id": 1,
    "username": "markvanlan",
    "github_username": "markvanlan"
  }
]

Konfiguration

GitHub OAuth-App einrichten

  • Folgen Sie den Anweisungen von GitHub zur Erstellung einer OAuth-App. Es gibt zwei wichtige Einstellungen, die in den OAuth-App-Einstellungen konfiguriert werden müssen:

    • Homepage-URL - die Homepage Ihrer Discourse-Instanz (z. B. https://meta.discourse.org)

    • Autorisierungs-Callback-URL - die Startseite Ihrer Discourse-Instanz plus “/github-verification” (z. B. https://meta.discourse.org/github-verification)

Discourse-Einstellungen konfigurieren

Einstellungen finden Sie unter /admin/site_settings/category/all_results?filter=discourse_github_verification

  • discourse github verification enabled - Aktiviert das Plugin, indem es im Einstellungsbereich der Website aktiviert wird (/admin/site_settings/category/all_results?filter=discourse_github_verification).

  • discourse github verification client id - Client-ID Ihrer GitHub OAuth-App

  • discourse github verification client secret - Client-Geheimnis Ihrer GitHub OAuth-App

Vorbehalt

Dieses Plugin berücksichtigt keine bestehende Konfiguration der GitHub-Anmeldung. Discourse unterstützt dies standardmäßig, aber das Plugin discourse-github-verification verwendet nicht die vorhandenen Einstellungen github client id und github client secret einer Website. Falls diese ausgefüllt sind, könnten wir sie wahrscheinlich anstelle der doppelten Einstellungen verwenden. Das Plugin weiß auch nicht, ob sich ein Benutzer bereits mit GitHub bei Discourse angemeldet hat. Es wäre schön, dies automatisch zu erkennen.


Vielen Dank an Sailpoint für das Sponsoring dieser Arbeit und die Open-Source-Veröffentlichung :tada:

11 „Gefällt mir“

Für alle, die sich fragen, wie dieses Plugin nützlich sein könnte: Wir haben es in Verbindung mit dem Gamification-Plugin entwickelt.

Wir ermöglichen es unseren Benutzern, Punkte in unserem Contributor-Programm zu sammeln, indem sie zu unseren GitHub-Repositories beitragen. Wir ließen dieses Plugin anfertigen, damit wir sicherstellen konnten, dass der Benutzer tatsächlich der GitHub-Account-Besitzer war, den er angab. Wenn ein Beitragsevent auf GitHub stattfindet, fragen wir unsere Liste von Benutzern mit verbundenen GitHub-Konten ab und prüfen, ob das GitHub-Konto im Forum existiert. Wenn ja, geben wir ihnen die festgelegten Punkte.

3 „Gefällt mir“