Заблокированы в форуме Discourse из-за бага с ключом доступа?

Я являюсь участником https://www.trucknetuk.com/, который использует Discourse 3.5.0.beta3-dev.

Я активировал использование моего устройства аутентификации Thetis Pro, и всё работало нормально, пока мне не пришлось переустановить Windows. Теперь я получаю сообщение «Этот ключ безопасности не кажется знакомым». Я обнаружил, что если я извлекаю ключ перед попыткой входа, а затем вставляю его по запросу, появляется следующее сообщение:

«Произошла ошибка: ключ безопасности с указанным идентификатором учётных данных не найден».

Я вижу, что ключ для этого сайта существует в приложении Thetis Pro Key Manager.

Примечание: Я пробовал использовать Chrome, Firefox, мобильные устройства и т. д., а также свой ноутбук, но получаю то же самое сообщение. Все остальные ключи на устройстве работают корректно для других сайтов.

Я пытался связаться с владельцем сайта, но он просто посоветовал сбросить пароль — не уверен, что он понимает, как работают ключи доступа (passkeys). Да, я могу сбросить пароль, но для завершения процесса всё равно требуется ключ доступа.

Также я создал новую учётную запись и тему на https://www.trucknetuk.com/t/locked-out-as-passkeys-seems-broke-and-no-backup-recovery-options-offered/240978, но там мне не очень помогли.

Так что, есть ли что-то ещё, что я могу сделать, или попросить администратора форума попробовать, или как-то инициировать резервный вариант? Я не помню, чтобы существовал способ создания резервного ключа доступа через Windows Hello или Google Password Manager, что я обычно и делаю. Также нет никакой другой опции, кроме физического ключа, при нажатии «отмена».

Есть ли какие-то идеи?! Спасибо.

1 лайк

Привет, добро пожаловать в Meta!

Я не могу объяснить, почему это происходит. Интересно, что это случается только с Discourse.

Попробовали ли вы войти по ссылке для входа? Для завершения процесса ключ доступа не требуется.

image

2 лайка

Спасибо за ответ. Извините, забыл упомянуть, что я уже пробовал это раньше.
Я нажимаю на ссылку в письме (www.trucknetuk.com/session/email-login/XXXXXX), но меня снова возвращает на этот экран:

Если я выбираю «Аутентифицироваться с помощью ключа безопасности», появляется ошибка «не выглядит знакомым». Если я выбираю «попробовать другой способ», появляется страница со следующим сообщением:

Когда у вас будет подготовлен физический ключ безопасности или совместимое мобильное устройство, нажмите кнопку «Аутентифицироваться с помощью ключа безопасности» ниже.

Однако такой кнопки не отображается, есть только текстовое поле для вставки чего-либо.

[РЕДАКТИРОВАНИЕ] — извините, из-за ошибки «только одно изображение на пост для новых пользователей» мне придётся разделить это сообщение в следующем ответе…

1 лайк

Я попробовал угадать и вставил в поле и «user ID», и «credential ID», но в обоих случаях появляется сообщение:

Предоставленный открытый ключ недействителен.

Чтобы доказать, что у меня действительно есть действующий ключ для сайта, вот сами данные с ключа:

Это становится всё интереснее!

(ещё раз извините за три сообщения подряд, но это было из-за ограничения «одно сообщение на пост»)

2 лайка

Привет @digitaltoast, добро пожаловать! Просто отвечаю здесь, что мы увидели вашу проблему и обсуждаем…

1 лайк

В Discourse существует два типа ключей безопасности: ключ первого фактора (также известный как passkey) и ключ второго фактора. Passkey можно использовать для входа с основного экрана авторизации до ввода пароля. Ключ второго фактора можно использовать только после ввода пароля; именно поэтому он называется ключом второго фактора, так как применяется после первого этапа аутентификации.

Я вижу, что в вашей учётной записи есть ключ второго фактора, поэтому вы получаете запрос «Аутентифицироваться с помощью ключа безопасности». Также я вижу, что у вас есть passkey от Windows. Можете ли вы попробовать войти с его помощью? Сохранён ли он у вас после сброса Windows?

Если это не сработает, вы можете обратиться к администратору TruckNet с просьбой сбросить ключи безопасности учётной записи hugh_lorry. Администратор должен будет подтвердить, что вы являетесь законным владельцем этой учётной записи. Если он согласится и удалит ключ, вы сможете войти через электронную почту без 2FA, так как на этой учётной записи больше не будет двухфакторной аутентификации.

3 лайка

Хорошо, для уточнения:

Я вижу ключ доступа непосредственно на физическом USB-устройстве Thetis Pro, поэтому знаю, что использовал именно его, а не Windows Hello.

Если я использую этот ключ, получаю сообщение:
"Произошла ошибка: ключ безопасности с указанным идентификатором учётных данных не найден."

В отличие от других сайтов, здесь нет возможности выбрать что-либо, кроме физического ключа безопасности. Обычно, когда появляется сообщение "вставьте ваш ключ безопасности", если нажать «Отмена», предлагаются другие варианты, например, использование ключей доступа Windows Hello. Но если я нажимаю «Отмена», появляется сообщение:

"Процесс аутентификации с помощью ключа безопасности либо истёк по времени, либо был отменён."

Единственный способ попасть на экран 2FA — выбрать «Вход по ссылке на электронную почту», а затем «Двухфакторная аутентификация».

После этого отображается довольно запутанный экран с надписью:

"Когда ваш физический ключ безопасности или совместимое мобильное устройство будут готовы, нажмите кнопку «Аутентифицироваться с помощью ключа безопасности» ниже."

Однако кнопки «Аутентифицироваться с помощью ключа безопасности» нет; вместо неё есть поле для ввода (<p class="second-factor__description">) и кнопка «Завершить вход» ниже.

Я предполагаю, что это поле предназначено для ввода 6-значного кода 2FA из генератора кодов, но единственный используемый мной — Authy, и его там нет. Что бы я ни ввёл, появляется сообщение "Указанный открытый ключ недействителен", что, возможно, указывает на ошибку на стороне хостинга, а не на моей?

Я вернулся к своей временной учётной записи и попытался снова настроить ключи доступа и 2FA. При этом заметил, что есть возможность скачать резервные коды, что я обязательно сделал бы, так как всегда делаю это для других сайтов. Я всегда записываю их в двух местах, но их нет ни в одном из них. Я, вероятно, включил 2FA примерно в феврале 2024 года, когда они перешли со старых форумов на Discourse. Возможно, эта опция ещё не была доступна на той странице в то время?

Это интересно — означает ли это, что вы на самом деле можете видеть мою учётную запись и учётные данные на сайте Trucknet?

Хорошо, понял. Я сделаю это в крайнем случае, но, если возможно, хотел бы попытаться разобраться в проблеме и помочь исправить возможную ошибку или крайний случай, который может «поймать» кого-то ещё в будущем, вместо того чтобы искать обходные пути на данном этапе.

Спасибо ещё раз!

РЕДАКТИРОВАНИЕ: Просто для дополнения: если я пытаюсь войти через свой мобильный Pixel 6a, используя тот же ключ через NFC, получаю ошибку:

NotReadableError: Произошла неизвестная ошибка при взаимодействии с менеджером учётных данных.

Могу подтвердить, что использование этого ключа через NFC работает нормально на других сайтах (Google, https://www.passkeys.io/ и т. д.).

Можете ли вы выложить скриншот этого экрана? Судя по всему, ваш аккаунт находится в необычном состоянии. Кажется, что одна часть приложения имеет запись о ключах двухфакторной аутентификации, а другая — нет. Немного сложно объяснить, но на стороне Discourse есть два понятия: ключи безопасности и методы второй факторной аутентификации (один из которых — ключи безопасности, остальные — TOTP и резервные коды).

Насколько я помню, да, был короткий период, когда интерфейс для резервных кодов не был достаточно понятным для пользователей. Другими словами, я считаю, что в течение короткого времени генерация резервных кодов была несколько скрыта.

1 лайк