Это не так — у нас довольно стандартная реализация того, что описано по ссылке Setup DiscourseConnect - Official Single-Sign-On for Discourse (sso), с соблюдением всех перенаправлений. Она работает без сбоев уже несколько лет, и мы её не трогали.
Хотя мы не делаем ничего необычного в рамках SSO, я всё же попробовал отключить эту настройку через консоль Rails. Единственный эффект заключался в том, что исчезло сообщение об ошибке: когда провайдер SSO перенаправлял обратно в Discourse, вместо ошибки «Account login timed out, please try logging in again.» (Время входа истекло, попробуйте войти снова) не отображалось вообще никакого сообщения — ни ошибки, ни чего-либо ещё. К сожалению, пользователь всё равно оставался разлогиненным.
Я тоже пытаюсь ухватиться за соломинку, так как ситуация довольно странная. Мне кажется, что тот факт, что проблема не проявилась сразу после первоначального обновления до версии 3.3.3 через веб-интерфейс, а возникла лишь (~36 часов) позже после пересборки через консоль, может быть подсказкой, но я недостаточно хорошо знаю различия между этими двумя процессами.
Я снова обновился до версии 3.3.3, и проблема проявилась немедленно. Возврат к версии 3.3.2 снова сделал SSO рабочим.