■ はじめに
デバイス(PC)を故障した際に、新しいPCに乗り換える時に Githubアカウントに関しては、かなり特殊だったので メモと教訓を書いておく。
目次
【1】今回の状況 1)2 要素認証クレデンシャルをなくした際のアカウントの回復 【2】今回の解決案 1)注意点 2)メール アドレスのリンク解除方法 【3】もしも... 0)英語ができるなら 1)もしもリカバリコードが分かっていたら 2)もしもSSHトークンが分かっていたら 【4】教訓 1)2 要素認証リカバリ方法を設定する 2)WinAuthを使っている場合
【1】今回の状況
* 状況としては、以下の通り。 * 2段階認証設定 * 2段階認証に設定したデバイス(PC)は故障でログインできない * リカバリコード分からず * SSHトークン分からず(デバイスに保存してあるだけ) * SMS backupなし * Passkeyなし(あっても、デバイス壊したので意味なし) * ユーザ名(Email)とパスワードは、分かっている => こんな状況なので、User/passwordを分かっても 2段階認証を聞いてくるので、 2段階認証を一旦Offっるってことができない
1)2 要素認証クレデンシャルをなくした際のアカウントの回復
* まずは、以下の公式ドキュメントを参照
* パスキーを使って認証する * セキュリティキーによる認証 * フォールバック番号による認証 * 検証済みデバイス、SSH トークン、または personal access token
【2】今回の解決案
* GithubアカウントのEmail を Unlinkし、 アカウントを作り直す
より抜粋 ~~~~~~~~~ 2 要素認証 (2FA) の資格情報を紛失し、アクセスを回復できない場合は、 メール アドレスと 2FA ロックされたアカウントの間の接続を削除できます。 その後、そのメール アドレスを新規または既存のアカウントにリンクして、 自分のコミット履歴を管理できます。 注 以下の手順に従っても 2FA を無効にしたり、 ロックされたアカウントにアクセスしたりできるようになるわけではなく、 関連付けられているメール アドレスのリンクを解除して、 別のアカウントで使用できるようになります。 2FA ロックされたアカウントへのアクセスを回復できない場合は、 以下の手順によって、そのアカウントとリンクされたメール アドレスとの間のリンクが 永続的に解除されます。 この記事を続行する前に、アカウントへのアクセスが 完全に失われていることを確認してください。 ~~~~~~~~~
1)注意点
* 元のユーザは完全に使えなくなる => やる前に、「【3】もしも...」を参照
2)メール アドレスのリンク解除方法
* 以下の公式ドキュメントを参照
https://docs.github.com/ja/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-your-personal-account/unlinking-your-email-address-from-a-locked-account#unlinking-your-email-address
https://docs.github.com/ja/authentication/securing-your-account-with-two-factor-authentication-2fa/recovering-your-account-if-you-lose-your-2fa-credentials#unlinking-your-email-address
【3】もしも...
* Unlink する前に、以下を確認することを推奨。
0)英語ができるなら
https://support.github.com/?tags=dotcom-direct
で質問してもいいかも、、、 (日本語、大丈夫?って聞いたら、ダメだった)
やり取り抜粋
Q What is the solution, if I break my PC which I use as multiple auth? A If you've lost your device used for two-factor authentication (2FA), don't worry, there are several recovery methods available. Recovery codes: When you set up 2FA, GitHub generated recovery codes which can be used to regain access to your account. If you have these codes saved, you can use one to bypass 2FA and regain access. SMS recovery: If you set up 2FA with SMS, you can have a recovery code sent to your mobile device. Authenticated devices: If you're already signed in to GitHub on another device, you can use that device to disable 2FA. SSH recovery: If you have a verified SSH key on your account, you can use it to authenticate and disable 2FA. Personal Access Token: If you have a personal access token saved, you can use it to authenticate via the command line and disable 2FA. Please note, if you cannot use any of the provided recovery methods, you have permanently lost access to your account. GitHub Support will not restore access to accounts with 2FA enabled if you lose your 2FA credentials or lose access to your account recovery methods. For more details, refer to the GitHub Account Recovery Policy. 参照元 GitHub Free/Team/Pro Q no recovery code, no sms, no Personal Access Token. What should I do? A. If you've lost access to your two-factor authentication device and don't have any recovery methods available (recovery codes, SMS, or personal access token), you have a couple of options: Authenticated devices: If you're already signed in to GitHub on another device (like a mobile device), you can use that device to disable 2FA. SSH recovery: If you have a verified SSH key on your account, you can use it to authenticate and disable 2FA. If none of these options are available, you have permanently lost access to your account. GitHub Support will not restore access to accounts with 2FA enabled if you lose your 2FA credentials or lose access to your account recovery methods. However, you can unlink an email address from the locked account and then use that email to create a new account. For more details, refer to the GitHub Account Recovery Policy.
1)もしもリカバリコードが分かっていたら
* 分かれば復旧できる
2)もしもSSHトークンが分かっていたら
* 分かれば復旧できる * 詳細は、以下のサイトを参照。
https://qiita.com/akiraak/items/dd401573d0770848d4c0
【4】教訓
* リカバリコードやSSHトークンはどこかに控えておいたほうがいい => PC/携帯だとその機器がぶっ壊れる場合があるので、 できれば多重に、、、
1)2 要素認証リカバリ方法を設定する
* 以下の公式ドキュメントを参照
2)WinAuthを使っている場合
* WinAuthを使っている場合は、Exportでバックアップをとっておき Cloudなどで保持しておく
WinAuth ~ 多要素認証ソフト ~
https://dk521123.hatenablog.com/entry/2023/02/20/205028
関連記事
Github ~ 入門編 ~
https://dk521123.hatenablog.com/entry/2019/07/18/234652
Github ~ 多要素認証(MFA)の設定 ~
https://dk521123.hatenablog.com/entry/2020/12/02/000000
Github ~ アクセストークン ~
https://dk521123.hatenablog.com/entry/2022/01/19/113903
WinAuth ~ 多要素認証ソフト ~
https://dk521123.hatenablog.com/entry/2023/02/20/205028