Skip to main content

2 要素認証を使用したGitHubへのアクセス

2FA を有効にすると、 GitHubにサインインするときに、2FA 認証コードとパスワードの入力を求められます。

2 要素認証が有効になっている場合は、認証コードを指定する必要があります、ブラウザーからGitHubにアクセスするときにパスキーまたはセキュリティ キーを使用します。 API やコマンド ラインなどの他の方法を使用して GitHub にアクセスする場合は、別の形式の認証を使用する必要があります。 詳しくは、「GitHubへの認証について」をご覧ください。

Web サイトにサインインするときに 2FA を実行する

パスワードを使用してGitHubにサインインした後、認証コードを指定する必要がありますするか、セキュリティ キーを使用して 2FA を実行します。

GitHub は、ログアウトした場合、新しいデバイスを使用している場合、機密性の高いアクションを実行している場合、またはセッションの有効期限が切れている場合にのみ、2FA 認証コードの提供を求められます。 機密性の高いアクションの 2FA の詳細については、「Sudo モード」を参照してください。

TOTP アプリケーションでのコード生成

TOTP アプリケーションを使用して 2 要素認証を設定することを選択した場合は、いつでも GitHub の認証コードを生成できます。 多くの場合、アプリケーションを起動するだけで新しいコードが生成されます。 個別の手順についてはアプリケーションのドキュメンテーションを参照してください。

2 要素認証を設定した後に認証アプリケーションを削除した場合は、アカウントにアクセスするために復旧コードを入力する必要があります。 多くの TOTP アプリでは、クラウドでの認証コードのセキュリティで保護されたバックアップがサポートされており、デバイスにアクセスできなくなった場合に復元できます。 詳しくは、「二要素認証クレデンシャルをなくした際のアカウント復旧」をご覧ください。

セキュリティ キーの使用

アカウントに対してセキュリティ キーを設定していて、ブラウザーでセキュリティ キーがサポートされている場合は、それを使ってサインインを完了できます。

  1. ユーザー名とパスワードを使用して、ブラウザーから GitHub にサインインします。
  2. 物理的なセキュリティ キーを使う場合は、それがデバイスに接続されていることを確認してください。
  3. オペレーティング システムからセキュリティ キー プロンプトをトリガーするには、[Use security key] (セキュリティ キーの使用) を選択します。
  4. プロンプトで適切なオプションを選択します。 セキュリティ キーの構成によっては、PIN を入力したり、生体認証プロンプトを完了したり、物理的なセキュリティ キーを使用したりする場合があります。

パスキーを使う

2FA を有効にし、アカウントにパスキーを追加した場合、パスキーを使ってサインインできます。 パスキーはパスワードと 2FA の両方の要件を満たすので、1 つの手順でサインインを完了できます。 「パスキーの概要」を参照してください。

コマンドラインでの 2 要素認証の使用

2FA を有効にすると、コマンド ラインでパスワードを使用して GitHub にアクセスできなくなります。 代わりに、Git Credential Manager、 personal access token、または SSH キーを使用します。

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" というエラーが表示される場合、入力した認証コードが正しくありません。 アカウントの回復を試みる前に、構成されている認証方法のトラブルシューティングを試してください。 「二要素認証の問題を解決する方法」を参照してください。

参考資料