2 要素認証 (2FA) が有効になっている場合は、ブラウザーから GitHub にアクセスするときに 2 番目の要素を使用する必要があります。 最初に 2FA を構成すると、アカウントの 2FA の方法が正しく設定されていることを確認するために、アカウントは 28 日間の検査期間に入ります。 28 日以内に 2FA を正常に実行することで、検査期間を終了できます。 28 日以内に認証しない場合は、既存の GitHub セッションの 1 つ内で 2FA を実行するように求められます。 28 日目のチェックインに合格するために 2FA を実行できない場合は、提供されているショートカットを使用して 2FA 設定を再構成し、 GitHubへのアクセスを保持します。 詳しくは、「2 要素認証を設定する」をご覧ください。
API やコマンド ラインなどの他の方法を使用して GitHub にアクセスする場合は、トークン、アプリケーション、または SSH キーを使用して認証します。 詳しくは、「GitHubへの認証について」をご覧ください。
Web サイトにサインインするときに 2FA を実行する
パスワードを使用してGitHubにサインインした後、認証コードを指定する必要がありますGitHub Mobileで通知をタップするか、するか、セキュリティ キーを使用して 2FA を実行します。
GitHub は、ログアウトした場合、新しいデバイスを使用している場合、機密性の高いアクションを実行している場合、またはセッションの有効期限が切れている場合にのみ、2FA 認証コードの提供を求められます。 機密性の高いアクションの 2FA の詳細については、「Sudo モード」を参照してください。
TOTP アプリケーションでのコード生成
TOTP アプリケーションを使用して 2 要素認証を設定することを選択した場合は、いつでも GitHub の認証コードを生成できます。 多くの場合、アプリケーションを起動するだけで新しいコードが生成されます。 個別の手順についてはアプリケーションのドキュメンテーションを参照してください。
2 要素認証を設定した後に認証アプリケーションを削除した場合は、アカウントにアクセスするために復旧コードを入力する必要があります。 多くの TOTP アプリでは、クラウドでの認証コードのセキュリティで保護されたバックアップがサポートされており、デバイスにアクセスできなくなった場合に復元できます。 詳しくは、「二要素認証クレデンシャルをなくした際のアカウント復旧」をご覧ください。
セキュリティ キーの使用
アカウントに対してセキュリティ キーを設定していて、ブラウザーでセキュリティ キーがサポートされている場合は、それを使ってサインインを完了できます。
- ユーザー名とパスワードを使用して、ブラウザーから GitHub にサインインします。
- 物理的なセキュリティ キーを使う場合は、それがデバイスに接続されていることを確認してください。
- オペレーティング システムからセキュリティ キー プロンプトをトリガーするには、[Use security key] (セキュリティ キーの使用) を選択します。
- プロンプトで適切なオプションを選択します。 セキュリティ キーの構成によっては、PIN を入力したり、生体認証プロンプトを完了したり、物理的なセキュリティ キーを使用したりする場合があります。
パスキーを使う
2FA を有効にし、アカウントにパスキーを追加した場合、パスキーを使ってサインインできます。 パスキーはパスワードと 2FA の両方の要件を満たすので、1 つの手順でサインインを完了できます。 「パスキーの概要」を参照してください。
テキストメッセージの受信
テキスト メッセージを使用して 2 要素認証を設定した場合、 GitHub は認証コードと共にテキスト メッセージを送信します。
GitHub Mobile で確認
GitHub Mobileにインストールしてサインインしている場合は、2 要素認証のGitHub Mobileで認証することを選択できます。
-
ユーザー名とパスワードを使用して、ブラウザーで GitHub にサインインします。
-
GitHub は、サインインの試行を確認するためのプッシュ通知を送信します。 プッシュ通知を開くか、 GitHub Mobile アプリを開くと、このサインイン試行を承認または拒否するように求めるプロンプトが表示されます。
メモ
このプロンプトでは、サインインしているブラウザー内に表示される 2 桁の番号の入力を要求される場合があります。
- GitHub Mobileを使用してログイン試行を承認すると、ブラウザーは自動的にサインイン試行を完了します。
- サインイン試行を拒否すると、認証が終了できなくなります。 詳しくは、「アカウントとデータを安全に保つ」をご覧ください。
コマンドラインでの 2 要素認証の使用
Git Credential Manager を使用したコマンド ラインでの認証
Git Credential Manager は、Windows、macOS、Linux で実行されるセキュリティで保護された Git 資格情報ヘルパーです。 Git 資格情報ヘルパーの詳細については、Pro Git ブックで「繰り返しの回避」を参照してください。
セットアップ手順は、コンピューターのオペレーティング システムによって異なります。 詳細については、GitCredentialManager/git-credential-manager リポジトリの「ダウンロードとインストール」を参照してください。
HTTPS を利用したコマンドラインでの認証
HTTPS URL を使用してコマンド ラインでpersonal access tokenを認証するときにパスワードとして使用するGitHubを作成する必要があります。
コマンド ラインでユーザー名とパスワードの入力を求められたら、 GitHub のユーザー名と personal access tokenを使用します。 コマンド ライン プロンプトでは、パスワードの入力を求められたときに personal access token を入力するように指定されません。
詳しくは、「個人用アクセス トークンを管理する」をご覧ください。
SSH を利用したコマンドラインでの認証
2FA を有効にしても、SSH URL を使用してコマンドラインから GitHub に認証する方法は変わりません。 SSH キーの設定と使用の詳細については、「SSH を使用したGitHubへの接続」を参照してください。
トラブルシューティング
2FA で認証するときに "Two-factor authentication failed" というエラーが表示される場合、入力した認証コードが正しくありません。 アカウントの回復を試みる前に、構成されている認証方法のトラブルシューティングを試してください。 「二要素認証の問題を解決する方法」を参照してください。