Мы перешли на Discourse около двух лет назад и используем SSO из нашей основной системы бэк-офиса в качестве провайдера аутентификации. В ней используется внешний идентификатор (GUID).
Мы готовимся к переходу на новую систему бэк-офиса от другого поставщика. Она поддерживает OAuth2/OpenID, но при переходе на эту новую систему внешние идентификаторы (GUID) наших пользователей изменятся. Поэтому я хочу узнать, сталкивались ли другие с подобной ситуацией и придется ли мне как-то выполнить массовое обновление внешних идентификаторов, хранящихся в настоящее время в нашей системе Discourse?
Но я не пытаюсь зарегистрироваться. Я захожу на главную страницу, затем нажимаю «Войти», попадаю на страницу входа моего провайдера SSO, успешно аутентифицируюсь, но после ввода пароля оказываюсь на странице «Давайте создадим вашу учётную запись», хотя я никогда не нажимал «Зарегистрироваться».
Для устранения неполадок я бы начал только с обязательных настроек. Пожалуйста, подтвердите, что пользователь с указанным адресом электронной почты существует с обеих сторон.
Вы вводили этот адрес вручную в Discourse, или он был автоматически заполнен сервером SSO?
По моему мнению, здесь, возможно, происходит следующее: этот адрес электронной почты связан с другим именем пользователя в Discourse, а ваш сервер SSO отправляет новое имя пользователя, что вызывает конфликт.
Есть ли в логах Discourse что-то связанное с SSO? Это может помочь точно определить причину проблемы.
Спасибо. Я проверил, что могу отключить SSO/OpenID в Discourse и войти с тем же адресом электронной почты в Discourse. Я также убедился, что эти же учетные данные работают с моим провайдером SSO.
Когда я снова включаю OpenID в Discourse, я успешно аутентифицируюсь через провайдера SSO, но затем всё равно попадаю на экран Discourse, где предлагается создать учётную запись. Все три значения на этом экране (электронная почта, имя пользователя и полное имя) автоматически заполняются провайдером SSO.
Я также попробовал отключить все вышеупомянутые настройки, но поведение не изменилось.