このガイドでは、特定のDiscordサーバーへのアクセスを制限する方法を含め、DiscourseフォーラムのログインオプションとしてDiscordを設定および構成する方法を説明します。
必要なユーザーレベル: 管理者
設定が完了すると、Discordはフォーラム上の他の認証方法と並んでログインオプションとして表示されます。
Discord OAuth2の設定
Discordアプリケーションの作成
- Discord開発者ポータルにアクセスします
- 「New Application」(新しいアプリケーション)をクリックします
- アプリケーションの名前を入力し、アイコンをアップロードし、説明を追加します
- これらの詳細は、ログインプロセス中にユーザーに表示されます
OAuth2設定の構成
- 左側のサイドバーにある「OAuth2」タブに移動します
- 「Client ID」(クライアントID)と「Client Secret」(クライアントシークレット)をコピーします
- シークレットが表示されない場合は、「Reset Secret」(シークレットをリセット)をクリックして新しいものを生成します
- リダイレクトURLを追加します
- フォーマット:
https://your-discourse-site.com/auth/discord/callback
末尾のスラッシュは含めないでください
- フォーマット:
- 「Save Changes」(変更を保存)をクリックします
DiscourseでのDiscordログインの有効化
- Discourseの管理設定で、
discord_client_id設定にクライアントIDを入力します discord_secret設定にクライアントシークレットを入力しますenable_discord_logins設定を有効にします
特定のDiscordサーバーへのアクセス制限
Discordサーバー(ギルド)のメンバーにのみDiscordログインを制限できます。
サーバーIDの検索
- ブラウザでDiscordを開きます
- サーバー内の任意のチャンネルに移動します
- URLを確認します:
https://discord.com/channels/{guild_id}/{channel_id} - URLから最初の数値(guild_id)をコピーします
- 例:
https://discord.com/channels/123/456の場合、サーバーIDは123です
- 例:
サーバー制限の構成
- Discourseの管理設定で、
discord_trusted_guilds設定を見つけます - サーバーIDを追加します
- 必要に応じて複数のサーバーIDを追加できます
サーバー制限が有効な場合:
- 信頼されたサーバーのメンバーは通常どおりログインできます
- その他のユーザーにはエラーメッセージが表示されます
- このメッセージは「Customize → Text」でカスタマイズでき、
discord.not_in_allowed_guildを検索してください
セキュリティのためにサーバー制限を使用している場合は、Discourseの設定ですべての他のログイン方法を無効にしてください。
次のステップ
重要なDiscourseトピックをDiscordチャンネルにプッシュするために、chat-integrationプラグインの設定を検討してください。






