Git Credential Manager を使用して Azure Repos に対する認証を行う

Azure DevOps Services |Azure DevOps Server |Azure DevOps Server 2022

Visual Studio 2019 |Visual Studio 2022

Git Credential Manager を使用すると、Azure Repos Git リポジトリでの認証が簡略化されます。 資格情報マネージャーを使用すると、Azure DevOps Web ポータルで使用するのと同じ資格情報を使用できます。これにより、Microsoft アカウントまたは Microsoft Entra ID によるセキュリティで保護された認証と組み込みの多要素認証がサポートされます。 Git Credential Manager では、GitHub リポジトリでの 2 要素認証 もサポートされています。

Tip

この記事の後半でAI を使用してこのタスクに役立てる方法をご説明します。または、Azure DevOps MCP Server で AI サポートを有効にする方法を参照して作業を開始できます。

認証オプション

Git Credential Manager では複数の認証方法がサポートされており、セキュリティ強化のために Microsoft Entra ID トークンが推奨されるアプローチです。

  • Microsoft Entra ID トークン (推奨) - トークンの有効期間が短く、組織のポリシーとの統合が向上し、セキュリティが強化されます。
  • Microsoft アカウント認証 - 多要素認証がサポートされている個人用 Microsoft アカウント。
  • 個人用アクセス トークン - 代替として使用できます。 可能な場合は、Microsoft Entra ID トークンを使用します。

IDE 統合

Azure Repos では、次のクライアントを介した Microsoft アカウントと Microsoft Entra 認証に対する IDE サポートが提供されます。

環境に統合が使用できない場合は、 Microsoft Entra ID トークン (推奨)、 個人用アクセス トークン、または SSH を使用して IDE を構成してリポジトリに接続できます。

Von Bedeutung

リスクの高い個人用アクセス トークンよりも安全な Microsoft Entraトークンを使用することを検討してください。 詳細については、「 PAT 使用量の削減」を参照してください。 認証ガイダンスを確認して、ニーズに適した認証メカニズムを選択します。

Git Credential Manager をインストールする

ウィンドウズ

Git Credential Manager を含む最新の Git for Windows インストーラーをダウンロードして実行します。 Git Credential Manager のインストール オプションを有効にしてください。

スクリーンショット 、[Windows 用 Git のインストール中に Git Credential Manager を有効にする] の選択が示されています。

macOS と Linux

SSH キーを使用して Azure Repos に対する認証を行うか、Git Credential Manager を使用できます。

インストール手順は、GCM の GitHub リポジトリに含まれています。 macOS では、 Homebrew を使用することをお勧めします。 Linux では、.deb または tarballからインストールできます。

Git Credential Manager の使用

Git クライアントから Git リポジトリに初めて接続すると、資格情報マネージャーによって資格情報の入力が求められます。 Microsoft アカウントまたは Microsoft Entra の資格情報を指定します。 アカウントで多要素認証が有効になっている場合、資格情報マネージャーは、そのプロセスも実行するように求められます。

Git 資格情報マネージャーのプロンプトが Git プル中に表示される Git プル中に Git Credential Manager によって入力を求められる様子

認証されると、資格情報マネージャーは、リポジトリへの将来の接続用のトークンを作成してキャッシュします。 このアカウントに接続する Git コマンドは、トークンの有効期限が切れるまでユーザー資格情報の入力を求められません。 トークンは、Azure Repos を通じて取り消すことができます。

既定では、GCM は Azure Repos からさまざまな種類の認証トークンを要求できます。 Microsoft Entra ID トークンを使用するように既定の Git 認証を構成できます。これにより、OAuth プロトコルによるセキュリティが強化されます。 このアプローチにより、セキュリティが向上し、組織のポリシーとの統合が向上します。 Azure Reposで GCM を使用する の詳細について説明します。

git config --global credential.azreposCredentialType oauth

サービス プリンシパルを認証として使用する

GCM による認証用のサービス プリンシパルを提供することもできます。 サービス プリンシパルのクライアント ID とテナント ID を次の形式で指定します:{tenantId}/{clientId}。

git config --global credential.azreposServicePrincipal "11111111-1111-1111-1111-111111111111/22222222-2222-2222-2222-222222222222"

また、この値を設定する場合は、少なくとも 1 つの認証メカニズムを設定する必要があります。

AI を使用して資格情報マネージャー認証を構成および管理する

Copilot Chat 用の以下のプロンプト例は、認証オプションを理解し、Git Credential Manager を設定し、セットアップを検証し、必要に応じて問題をトラブルシューティングするのに役立ちます。 これらのプロンプトをコピーしてCopilot Chatに貼り付け、プレースホルダーをリポジトリと組織の詳細に置き換えます。

Task プロンプトの例
適切な認証方法を選択する For this team setup, compare Microsoft Entra ID tokens, Microsoft account sign-in, PAT, and service principal authentication in Git Credential Manager, and recommend the safest default.
Microsoft Entraを既定として構成する Show me the exact Git Credential Manager commands to make Microsoft Entra ID token auth the default for Azure Repos on this machine.
現在の認証モードを検証する Review this repository and tell me whether Git Credential Manager is currently using Microsoft Entra ID tokens, Microsoft account auth, or a PAT for Azure Repos.
資格情報のセキュリティ態勢を監査する Check this Git authentication setup and point out any security risks, including PAT overuse, tenant mismatch risk, or missing credential hardening steps.
サービス プリンシパルの設定を検証する Check this Git Credential Manager service principal configuration and explain what is missing for Azure Repos authentication to work.
サインインを繰り返し求められる問題に対処する I get prompted to sign in every time I run git fetch against Azure Repos. Help me troubleshoot Git Credential Manager token caching and credential store issues.

Copilot では AI を利用しているため、想定外のことや間違いが起こる可能性があります。 詳細については、「Copilot一般的な使用に関する FAQを参照してください。

ヘルプを取得する

Git Credential Manager の問題は、プロジェクトの GitHubで開いて報告できます。