У нас запущен экземпляр Discourse, который перестал регистрировать пользователей, у которых ещё нет аккаунта, и мы не можем понять, почему! Это началось пару недель назад после установки плагина Discourse AI и перезапуска экземпляра. Мне об этом стало известно только после жалоб клиентов за последние пару дней. Обычно у нас ежедневно много новых регистраций.
Настройка
- Самообслуживаемый Discourse через официальный Docker
- https://community.enginedj.com
- Плагин OIDC с использованием нашего собственного провайдера OIDC (
1) - Никакой другой аутентификации, кроме OIDC (т. е. нет регистрации по email и паролю) (
2) - Последняя успешная новая регистрация была 22 ноября 2023 года в 05:23 по времени NZDT
- Плагин AI был установлен примерно 22 ноября 2023 года в 06:03 по времени NZDT (это привело к перезагрузке экземпляра Discourse)
- В логах нет событий изменений конфигурации системы с октября, и ничего, связанного с аутентификацией, с марта (
3) - Активность на форуме высокая, проблем с местом на диске, базой данных и т. д. нет.
Проблема
- Процесс входа работает корректно, но возвращающиеся пользователи без существующего аккаунта не авторизуются
- Сообщение об ошибке не отображается
- В логах нет сообщений об ошибках (в логах есть некоторые ошибки CSRF, но они не связаны с неудачными попытками входа)
- Подробное логирование плагина OIDC показывает, что он корректно запрашивает данные у провайдера OIDC, получает утверждения и т. д., и проблем не выявляет (
4)
Что мы уже пробовали
- Отключили плагин Discourse AI
- Удалили плагин Discourse AI
- Проверили ответы куки на несоответствие доменов
- Обновили все плагины и компоненты до последних версий (
5) - Подтвердили, что настройки не изменялись
- Изучили логи на хосте. Ничего подозрительного не обнаружено.
Вот видео с демонстрацией проблемы. Первый вход — для пользователя без существующего аккаунта Discourse. Второй — с моим аккаунтом администратора.
https://www.loom.com/share/3aad210d844849dc8154ce6e5db50d29
Есть ли идеи, на что нам стоит обратить внимание дальше?
1
2
3
4
5






