Microsoft Entra を使用して Azure DevOps に対する認証を行う
Microsoft Entra ID は独自のプラットフォームを持つ独立した Microsoft 製品です。 主要な ID およびアクセス管理 (IAM) プロバイダーとして、Microsoft Entra ID
接続されると、Microsoft Entra ID 上の Microsoft ID アプリケーション プラットフォームは、アプリ開発者と組織管理者にいくつかの利点を提供します。 Azure テナントにアクセスするためのアプリケーションを登録し、Azure テナントコンストラクトの外部に存在する Azure DevOps を含む Azure リソースから必要なアクセス許可を定義できます。
Microsoft Entra アプリと Azure DevOps アプリは、互いを認識しない個別のエンティティです。 認証方法は異なります。Microsoft Entra は OAuth を使用し、Azure DevOps は独自の OAuth を使用します。 Microsoft Entra ID OAuth アプリ、Azure DevOps アクセス トークンではなく Microsoft Entra トークンを発行します。 これらのトークンでは通常、有効期限が 1 時間となっています。
Microsoft Entra で Azure DevOps アプリを開発する
Microsoft Entra のドキュメントを十分に読んで、新機能とセットアップ中のさまざまな想定を理解してください。
次のガイダンスを使用して、アプリの開発をサポートします。
- 同意を得たユーザーの代理としてアクションを実行するアプリ用の Microsoft Entra OAuth アプリ (ユーザー代理アプリ)。
- チーム内で自動化されたツールを実行するアプリの Microsoft Entra サービス プリンシパルとマネージド ID (それ自体の代理アプリ)。
個人アクセス トークン (PAT) を Microsoft Entra トークンに置き換える
個人用アクセス トークン (AT) は、作成と使用が容易なため、Azure DevOps 認証で一般的です。 ただし、PAT の管理とストレージが不十分な場合は、Azure DevOps 組織への不正アクセスにつながる可能性があります。 有効期間が長い、または範囲が広い PAT は、漏洩した場合に重大な損害を引き起こす可能性のあるリスクを高めます。
Microsoft Entra トークンは、セキュリティで保護された代替手段を提供し、更新が必要になるまでに 1 時間しか持続しません。 Entra トークンを生成するための認証プロトコルは、より堅牢で安全です。 トークンの盗難やリプレイ攻撃から保護する条件付きアクセス ポリシーなどのセキュリティ対策。 ユーザーは、AT ではなく Microsoft Entra トークンを使用して探索することをお勧めします。 このワークフローでは、一般的な PAT のユース ケースと、PAT を Entra トークンに置き換える方法を共有します。
Azure DevOps REST API へのアドホック リクエスト
Azure CLI でユーザー トークンを取得する
az login
コマンドを使用して Azure CLI にサインインし、画面の指示に従います。- これらの bash コマンドを使用して、サインインしているユーザーに適切なサブスクリプションを設定します。 Azure サブスクリプション ID が、アクセスしようとしている Azure DevOps 組織に接続されているテナントに関連付けられていることを確認します。 サブスクリプション ID がわからない場合は、Azure portal で確認できます。
az account set -s <subscription-id>
az account get-access-token
Azure DevOps リソース ID499b84ac-1321-427f-aa17-267ca6975798
を使用して Microsoft Entra ID アクセス トークンを生成します。
az account get-access-token \
--resource 499b84ac-1321-427f-aa17-267ca6975798 \
--query "accessToken" \
-o tsv
詳細については、Databricks のドキュメントを参照してください。
Azure CLI でサービス プリンシパル トークンを取得する
サービス プリンシパルでは、アドホック操作にアドホック Microsoft Entra ID アクセス トークンを使用することもできます。 詳細については、「サービス プリンシパルとマネージド ID/Azure CLIを使用した Microsoft Entra ID トークンの取得」を参照してください。
Git Credential Manager による Git 操作
Microsoft Entra トークンを使用して Git 操作を実行することもできます。 Git リポジトリに定期的にプッシュする場合は、Git Credential Manager を使用して、既定の credential.azReposCredentialType
として oauth
が設定されている限り、Microsoft Entra OAuth トークン資格情報を簡単にリクエストおよび管理できます。
関連記事
- Azure DevOps と Microsoft Entra OAuth アプリの統合を構築する
- Azure DevOps でサービス プリンシパル & マネージド ID を使用する