Discourse GitHub 検証

|||
-|-|-|
:discourse2: | 概要 | 指定されたGitHubアカウントをユーザーが所有していることを検証します
:hammer_and_wrench: | リポジトリリンク | GitHub - discourse/discourse-github-verification: Verifies that a Discourse user is the owner of a Github account
:open_book: | インストールガイド | Discourseにプラグインをインストールする方法

機能

このプラグインにより、ユーザーは指定されたGitHubアカウントを所有していることを検証できます。これはGitHubログインとは別です。単にユーザーカードとプロフィールにユーザーのGitHubアカウントへのリンクを表示します。

ユーザー設定に新しいタブ(「GitHub」)が追加されます。ユーザーがまだアカウントを接続していない場合は、GitHubアカウントを接続するためのボタンがあります。ユーザーがアカウントを接続している場合は、GitHubアカウントへのリンクと、DiscourseプロフィールからGitHubアカウントを切断するためのボタンが表示されます。

ユーザーが接続されたGitHubアカウントを持っている場合、ユーザーカードとユーザープロフィールにリンクが表示されます。

このプラグインは、管理者APIエンドポイント /github-verification/users.json を追加します。これは、接続されたGitHubアカウントを持つすべてのユーザーの配列を返します。応答は次のようになります。

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

設定

GitHub OAuthアプリの設定

  • OAuthアプリの作成に関するGitHubの手順に従ってください。OAuthアプリの設定には、2つの重要な設定があります。

    • ホームページURL - Discourseインスタンスのホームページ(例:https://meta.discourse.org

    • 認証コールバックURL - Discourseインスタンスのホームに「/github-verification」を追加したもの(例:https://meta.discourse.org/github-verification

Discourse設定の設定

設定は /admin/site_settings/category/all_results?filter=discourse_github_verification で見つけることができます。

  • discourse github verification enabled - サイト設定パネル(/admin/site_settings/category/all_results?filter=discourse_github_verification)でチェックすることにより、プラグインを有効にします。

  • discourse github verification client id - GitHub OAuthアプリのクライアントID

  • discourse github verification client secret - GitHub OAuthアプリのクライアントシークレット

注意事項

このプラグインは、既存のGitHubログイン設定を考慮していません。Discourseはデフォルトでこれをサポートしていますが、discourse-github-verificationプラグインはサイトの既存の github client id および github client secret 設定を使用しません。これらが入力されている場合、設定を重複させるのではなく、それらを使用できる可能性があります。また、プラグインはユーザーが既にGitHubでDiscourseにログインしたかどうかを認識しません。これを自動的に検出できると便利です。


この作業をスポンサーし、オープンソースにしてくれたSailpointに感謝します :tada:

「いいね!」 11

このプラグインがどのように役立つか疑問に思っている方のために、このプラグインはゲーミフィケーションプラグインと連携して動作するように開発されました。

ユーザーはGitHubリポジトリに貢献することで、貢献者プログラムでポイントを獲得できます。このプラグインは、ユーザーが主張したGitHubアカウントを実際に所有していることを確認するために作成されました。GitHubで貢献イベントが発生した場合、接続されたGitHubアカウントを持つユーザーのリストを照会し、GitHubアカウントがフォーラムに存在するかどうかを確認します。存在する場合、指定されたポイントを付与します。

「いいね!」 3