Нужны ли всплывающие окна для входа?

С момента внедрения социальных логин-систем в Discourse на десктопах вход всегда осуществлялся через всплывающее окно.

Идея заключалась в том, чтобы быть «менее» отвлекающим фактором, оставляя вас на самом сайте во время процесса входа.

Я считаю, что сохранять эту практику нет смысла по нескольким причинам.

Это уже несовместимо с тем, как работает «SSO в Discourse», может работать нестабильно в браузерах, которые блокируют всплывающие окна (мой Firefox жалуется и требует клика для их разрешения), код для отправки сообщений сложен и его трудно поддерживать, плюс сейчас мы уже требуем дополнительный клик во всплывающем окне.

Как вы относитесь к идее отказаться от кода «всплывающего окна для социального входа» и иметь только один последовательный способ входа, будь то SSO, социальный вход или что-то ещё?

@codinghorror / @david / @eviltrout?

26 лайков

Я согласен, что нужно убрать всплывающие окна и сделать всё единообразным. Это также позволит нам избавиться от большого объёма кода :tada:

Проблемы, которые вы описали в Firefox, можно исправить, но, как вы и заметили, код всплывающих окон сложен и подвержен таким ошибкам.

Могу заняться этим позже на этой неделе, если хотите?

18 лайков

Я был бы очень рад :grin:

10 лайков

Я создал PR по этому вопросу

Как только он в конечном итоге попадёт в стабильную версию, мы должны удалить избыточные настройки «полноэкранного режима» из плагинов (например, OAuth2, OIDC).

15 лайков

Класс… :+1:t3: :slot_machine: :hugs:

11 лайков

Это затрагивает довольно критические части нашего кода аутентификации, поэтому ветка уже развернута в Meta для тестирования.

Если у кого-то есть свободное время, пожалуйста, попробуйте войти в систему, используя несколько разных провайдеров, а также отключить и повторно подключить учётные записи в настройках. Если вы обнаружите какие-либо проблемы, сообщите мне, и я проведу расследование :face_with_monocle:

Также это отличная возможность опробовать нашу новую аутентификацию через Discord, которая настроена здесь, в Meta :tada:

6 лайков

@jomaxro, не могли бы вы помочь с тестированием?

3 лайка

Конечно! Я попробую все имеющиеся у меня аккаунты.

6 лайков

Проверен вход через Facebook, Google, Twitter и Discord — всё успешно. Также протестировано отключение и повторное подключение тех же учётных записей через настройки пользователя. Оба процесса прошли гладко.

GitHub протестировать не удалось, так как на учётной записи Discourse, связанной с GitHub, включена двухфакторная аутентификация.

5 лайков

Провёл дополнительное тестирование (вышеупомянутые тесты выполнялись в Chrome на Windows). Подтвердил, что вход в систему работает в IE, Edge и Firefox на Windows. Выявил две незначительные ошибки: одна связана с выходом из системы, другая — с подключением учётной записи в IE. Обе ошибки существовали и до внесения этого изменения.

5 лайков

Спасибо за тестирование, @jomaxro.

Пулл-реквест здесь. Это критическая ошибка ядра, которая усугубилась из-за того, что Facebook настаивает на добавлении хеша в URL обратного вызова.

Это была проблема кэширования, которая затрагивала только IE11. Должна быть исправлена этим коммитом. Разворачиваем это исправление на Meta прямо сейчас :mantelpiece_clock:

12 лайков

Звучит отлично! Может быть, мы сможем слить изменения после выпуска следующей бета-версии.

6 лайков

Пост был перемещен в новую тему: Google One-Tap Sign In

Это уже объединено

9 лайков

Эта тема была автоматически закрыта через 6 дней. Новые ответы больше не принимаются.