Это руководство объясняет, как настроить Discord в качестве варианта входа для вашего форума Discourse, включая ограничение доступа к конкретным серверам (guilds) Discord.>
Требуемый уровень доступа пользователя: Администратор
После настройки Discord появится как вариант входа наряду с другими методами аутентификации на вашем форуме:
Настройка Discord OAuth2
Создание приложения Discord
- Перейдите на портал разработчиков Discord
- Нажмите «New Application» (Создать приложение)
- Введите название, загрузите иконку и добавьте описание для вашего приложения
- Эти данные будут отображаться пользователям в процессе входа
Настройка параметров OAuth2
- Перейдите на вкладку «OAuth2» в левой боковой панели
- Скопируйте «Client ID» (Идентификатор клиента) и «Client Secret» (Секрет клиента)
- Если секрет не отображается, нажмите «Reset Secret» (Сбросить секрет), чтобы сгенерировать новый
- Добавьте ваш URL перенаправления:
- Формат:
https://ваш-сайт-discourse.com/auth/discord/callback
Не добавляйте завершающий слэш
- Формат:
- Нажмите «Save Changes» (Сохранить изменения)
Включение входа через Discord в Discourse
- В настройках администратора Discourse введите Client ID в настройку
discord_client_id - Введите Client Secret в настройку
discord_secret - Включите настройку
enable_discord_logins
Ограничение доступа к конкретным серверам Discord
Вы можете ограничить вход через Discord только для участников конкретных серверов Discord (guilds).
Поиск ID сервера (guild ID)
- Откройте Discord в браузере
- Перейдите в любой канал вашего сервера
- Посмотрите на URL:
https://discord.com/channels/{guild_id}/{channel_id} - Скопируйте первое число (guild_id) из URL
- Пример: В
https://discord.com/channels/123/456ID сервера —123
- Пример: В
Настройка ограничений по серверам
- В настройках администратора Discourse найдите настройку
discord_trusted_guilds - Добавьте ID ваших серверов
- При необходимости можно добавить несколько ID серверов
При включенном ограничении по серверам:
- Участники доверенных серверов будут входить в систему как обычно
- Другие пользователи увидят сообщение об ошибке
- Вы можете настроить это сообщение в разделе Настроить → Текст, поискав
discord.not_in_allowed_guild
Если вы используете ограничения по серверам для обеспечения безопасности, отключите все остальные методы входа в настройках Discourse.
Следующие шаги
Рассмотрите возможность установки плагина chat-integration, чтобы отправлять важные темы Discourse в каналы Discord.




