Мы используем OAuth2 для синхронизации учетных записей пользователей с учетными записями Fedora. Один пользователь отметил, что не хочет взаимодействовать с Discourse, используя тот же адрес электронной почты, по $ПРИЧИНАМ. Какие последствия влечет за собой возможность изменения адреса пользователя здесь? Смогут ли они по-прежнему входить в систему тем же способом? Есть ли какие-либо подводные камни, на которые мне следует обратить внимание?
Они могут изменить свой адрес электронной почты в Discourse, а затем добавить OAuth2 на странице настроек, если нажмут ссылку «Добавить альтернативный адрес электронной почты».
Я только что проверил: вход через Google OAuth2 с моим вторичным адресом приводит к авторизации в этой учётной записи.
Я не совсем уверен. Если они попытаются войти через OAuth после смены адреса электронной почты, но до того, как добавят его как дополнительный, система, думаю, попытается создать новую учётную запись.
Подождите, извините, но, кажется, это не отвечает на мой вопрос. Видимо, я выразился неясно. Сейчас у нас отключена возможность редактирования email-адреса. Это фиксирует основной адрес и запрещает добавление дополнительного. Судя по всему, изменение основного адреса приведёт к проблемам («система попытается создать новую учётную запись»). Существует ли способ включить добавление дополнительного адреса электронной почты, который можно будет использовать для ответов на сообщения, не позволяя при этом изменять основной адрес?
Извините, давайте я переформулирую начальную часть. Её не беспокоит, что письма от Discourse приходят на этот почтовый ящик. Однако её почтовый клиент не настроен на отправку писем с этого адреса. Насколько я понимаю, если её обычный адрес будет добавлен как дополнительный, Discourse поймёт, что нужно корректно связывать входящие ответы (которые сейчас отклоняются, так как не совпадают с её адресом электронной почты).
Да, вторичная почта должна здесь сработать, хотя я не уверен насчёт последствий. Возможно, не стоит трогать основные адреса. Может, попробовать и посмотреть, что получится?
Но здесь я тоже могу изменить свой основной адрес, верно? У нас на сайте произошло то же самое — я изменил настройку email editable, и теперь я могу как добавлять дополнительный адрес, так и менять основной. Как сделать так, чтобы пользователи могли делать только первое?
Полагаю, что у нас пока нет такой гибкости. Ближайший возможный вариант — запретить изменение основного адреса через CSS.
OAuth привязан к специальному ключу, поэтому влияние манипуляций с основным адресом электронной почты должно быть крайне низким: вход в систему по-прежнему будет работать и будет связан с основной учётной записью Fedora.
Не уверен, но, думаю, о единственном другом моменте, о котором вам стоит знать, это то, что мы создали административный интерфейс для слияния аккаунтов… так что в худшем случае, если вы обнаружите проблему, сможете решить её самостоятельно.