このガイドでは、OAuth 資格情報を設定して、Discourse フォーラムのログインオプションとして GitHub を設定する方法を説明します。
必要なユーザーレベル: 管理者
概要
GitHub ログインの統合により、ユーザーは GitHub アカウントを使用して Discourse サイトにサインインできるようになります。これは便利な認証オプションを提供し、特に開発者向けのコミュニティに役立ちます。
GitHub OAuth の設定
-
GitHub の開発者設定 (
https://github.com/settings/developers) にアクセスします。 -
左側のメニューで OAuth Apps を見つけてクリックします。
-
New OAuth App をクリックします。
-
必要なフィールドに入力します。
- Application name: サイト名を入力します。
- Homepage URL: サイトのメイン URL (例:
https://discourse.example.com)。 - Application description (オプション): サイトを簡潔に説明します。
- Authorization callback URL: サイトのドメインにパス
/auth/github/callbackを追加します (例:https://discourse.example.com/auth/github/callback)。
- Register application をクリックします。
Discourse 設定の構成
-
登録後、GitHub のアプリ設定ページに Client ID が表示されます。
-
Client Secret を取得するには、Generate a new client secret をクリックします。すぐにコピーしてください。これは一度しか表示されません。
-
Discourse の管理者設定で、以下を構成します。
github_client_idを Client ID に設定します。github_client_secretを Client Secret に設定します。enable github logins設定を有効にします。
統合のテスト
- Discourse サイトからサインアウトします。
- ログインページに、「with GitHub」のログインオプションが表示されているはずです。
- ログインフローをテストして、意図したとおりに機能することを確認します。
ベストプラクティス
- Client Secret を安全に保管し、公開しないでください。
- GitHub OAuth アプリの設定を定期的に確認してください。
- GitHub の OAuth アプリ設定で追加のセキュリティ機能を有効にすることを検討してください。
よくある問題と解決策
- ログインに失敗した場合は、コールバック URL が GitHub で構成されているものと正確に一致していることを確認してください。
- GitHub は HTTPS を要求するため、サイトの SSL 証明書が有効であることを確認してください。
- Client ID と Secret の両方が Discourse の設定に正しく入力されていることを確認してください。
