Git Credential Manager を使用して Azure Repos に対する認証を行う
Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019
Visual Studio 2019 |Visual Studio 2022
Git Credential Manager を使用すると、Azure Repos Git リポジトリでの認証が簡略化されます。 資格情報マネージャーを使用すると、Azure DevOps Services Web ポータルで使用するのと同じ資格情報を使用できます。 資格情報マネージャーは、Microsoft アカウントまたは Microsoft Entra ID を使用した多要素認証をサポートします。 資格情報マネージャーは、Azure Repos で多要素認証をサポートするだけでなく、GitHub リポジトリを使用した 2 要素認証
Azure Repos では、次のクライアントを介した Microsoft アカウントと Microsoft Entra 認証に対する IDE サポートが提供されます。
環境で統合が利用できない場合、個人用アクセス トークン を使って IDE に設定するか、SSH を使用してリポジトリに接続してください。
Git Credential Manager をインストールする
ウィンドウズ
Git Credential Manager を含む最新の Git for Windows インストーラーをダウンロードして実行します。 Git Credential Manager のインストール オプションを有効にしてください。
スクリーンショット
macOS と Linux
Azure Repos に対する認証には SSH キーを使用することも、Git Credential Manager を使用することもできます。
インストール手順は、GCM の GitHub リポジトリに含まれています。 Mac では、Homebrewを使用することをお勧めします。 Linux では、.deb または tarballからインストールできます。
Git Credential Manager の使用
Git クライアントから Git リポジトリに初めて接続すると、資格情報マネージャーによって資格情報の入力が求められます。 Microsoft アカウントまたは Microsoft Entra の資格情報を指定します。 アカウントで多要素認証が有効になっている場合、資格情報マネージャーは、そのプロセスも実行するように求められます。
Git 資格情報マネージャーのプロンプトが Git プル中に表示される
認証されると、資格情報マネージャーは、リポジトリへの将来の接続用のトークンを作成してキャッシュします。 このアカウントに接続する Git コマンドは、トークンの有効期限が切れるまでユーザー資格情報の入力を求められません。 トークンは、Azure Repos を通じて取り消すことができます。
既定の資格情報の種類を OAuth として設定する
既定では、GCM は Azure Repos に
既定 資格情報の種類を Microsoft Entra トークンに設定するには、credential.azreposCredentialType
構成エントリ (または環境変数 GCM_AZREPOS_CREDENTIALTYPE
) を oauth
に設定します。 Azure Reposで GCM を使用する
サービス プリンシパルを認証として使用する
GCM による認証用のサービス プリンシパルを提供することもできます。 サービス プリンシパルのクライアント ID とテナント ID を次の形式で指定します:{tenantId}/{clientId}
。
git config --global credential.azreposServicePrincipal "11111111-1111-1111-1111-111111111111/22222222-2222-2222-2222-222222222222"
また、この値を設定する場合は、少なくとも 1 つの認証メカニズムを設定する必要があります。
- credential.azreposServicePrincipalSecret
- credential.azreposServicePrincipalCertificateThumbprint
- credential.azreposServicePrincipalCertificateSendX5C
ヘルプの取得
Git Credential Manager の問題は、プロジェクトの GitHubで開いて報告できます。