В общем случае это будет невозможно (как определить, есть ли у анонимного пользователя учётная запись, не предложив ему войти?). Однако вполне реально определить, есть ли у пользователя активная сессия на вашем SSO-сайте.
Эта тема довольно старая, но, думаю, принцип всё ещё применим. По сути, добавьте URL с соответствующей поддержкой CORS, который возвращает JSON-ответ, указывающий, есть ли у пользователя активная сессия. Затем добавьте немного JS в вашу тему Discourse, который будет запрашивать этот URL и запускать процесс SSO, если активная сессия обнаружена.