バックアップ復元後、新規インストールでログインできません

このインストールがありました
forum.example.com
管理者アカウント admin@example.com にパスワードと2FAを設定していました。

やがて、それを新しいドメインに移行することにしました
community.newexample.com

その前に、forum.example.com のバックアップを作成しました。

今日、example.com に新しいコミュニティを作成することにしました。
すべてインストールし、新しい管理者アカウント(管理者2)などを作成しました。
ログインしました。
バックアップセクションに移動し、forum.example.com 用に作成したバックアップをアップロードしました。

ログアウトさせられました。
「管理者2」の新しい認証情報を使用してログインしようとしましたが、うまくいきませんでした。おそらく、最初のインストールの認証情報を使用しようとしているのだと思います。

問題は、forum.example.com の2FAがもう利用できないのに、それも要求されることです。

どうすればよいでしょうか?

UPDATE: ChatGPT の指示に従って実行できました。

:white_check_mark: ステップ 1: サーバーに SSH 接続する

ssh your-user@your-server

:white_check_mark: ステップ 2: Discourse アプリコンテナに入る

cd /var/discourse
./launcher enter app

:white_check_mark: ステップ 3: 管理者ユーザーのパスワードを作成またはリセットする

この手順により、既知のパスワードでログインできるようになります。

rake admin:create
  • プロンプトが表示されたら、バックアップから管理者のメールアドレス(例: admin@forum.example.com)を入力します。
  • 新しいパスワードを入力します。
  • 管理者権限を付与するかどうか尋ねられたら、「Y」と入力します(ユーザーがすでに管理者であっても問題ありません)。

:white_check_mark: ステップ 4: Rails コンソールを開く

rails c

:white_check_mark: ステップ 5: メールでユーザーを検索する

リセットするメールアドレスに置き換えてください。

user = User.find_by_email("admin@forum.example.com")

ユーザーオブジェクトを示す出力が表示されるはずです。


:white_check_mark: ステップ 6: そのユーザーの 2FA を無効にする

user.user_second_factors.destroy_all

これにより、そのユーザーに関連付けられたすべての 2FA キーが削除されます。他のユーザーには影響しません。


:white_check_mark: ステップ 7: コンソールとコンテナを終了する

exit

:white_check_mark: ステップ 8: Web 経由でログインする

ブラウザで Discourse サイトにアクセスし、以下を使用してログインします。

  • メールアドレス: admin@forum.example.com
  • パスワード: ステップ 3 で設定したもの
  • 2FA: 不要になります
「いいね!」 1

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.