次の方法で共有


エージェントをサービス プリンシパルで登録する

エージェント認証オプションとして SP を指定することで、エージェント バージョン 3.227.1 以降のサービス プリンシパルを使用してエージェントを登録できます。

エージェント プールへのアクセス権をサービス プリンシパルに付与する

サービス プリンシパルを使用してエージェントを登録する前に、 サービス プリンシパルを作成 し、エージェント プールにアクセスするためのアクセス許可を付与しておく必要があります。

Important

エージェント プールへのアクセス権をサービス プリンシパルに付与するには、エージェント プール管理者、 Azure DevOps 組織の所有者または TFS または Azure DevOps Server 管理者である必要があります。

エージェントが デプロイ グループ エージェントの場合は、デプロイ グループ管理者、 Azure DevOps 組織の所有者、または TFS または Azure DevOps Server 管理者である必要があります。

  1. ブラウザーを開き、Azure Pipelines 組織の [エージェント プール ] タブに移動します。

    1. 所属組織 (https://dev.azure.com/{yourorganization}) にサインインします。

    2. Azure DevOps>組織設定を選択します。

      [組織の設定] を選択する方法を示すスクリーンショット。

    3. [エージェント プール] を選択します

      [エージェント プール] タブを選択する方法を示すスクリーンショット。

  2. ページの右側にある目的のエージェント プールを選択し、[ セキュリティ] を選択します。 [追加] を選択し、 管理者 ロールを持つサービス プリンシパルを追加します。

    エージェント プールの [セキュリティ] タブのスクリーンショット。

  3. 使用するサービス プリンシパルが表示されない場合は、管理者に追加を求め、サービス プリンシパルにエージェント プールの管理者ロールを付与します。 管理者は、エージェント プール管理者、Azure DevOps 組織所有者、または TFS または Azure DevOps Server 管理者の場合があります。

    配置グループ エージェントの場合、管理者は、配置グループ管理者、Azure DevOps 組織所有者、または TFS または Azure DevOps Server 管理者の場合があります。

    Azure Pipelines の [デプロイ グループ] ページの [セキュリティ] タブで、デプロイ グループ管理者ロールにサービス プリンシパルを追加できます。

次のようなメッセージが表示された場合: 申し訳ございません。ID を追加できませんでした。別の ID を試してください。 または セルフ ID のロールを変更できません。別の ID を試してください。組織の所有者または TFS または Azure DevOps Server 管理者に対して、上記の手順に従った可能性があります。 何もする必要はありません。エージェント プールを管理するアクセス許可が既にあります。

プロジェクト設定、エージェント プールを使用してエージェント プール セキュリティ グループにサービス プリンシパルを追加する場合は、まず基本アクセス レベル (推奨) 以上の組織ユーザーとしてサービス プリンシパルを追加する必要があります。

サービス プリンシパルを使用してエージェントを登録する

  1. エージェントの登録時にサービス プリンシパルを使用して認証するように、エージェント構成中に認証の種類を求められたら SP を指定します。

  2. メッセージが表示されたら、 Client(App) IDテナント ID を指定します

    アプリケーション ID のスクリーンショット。

  3. クライアント シークレットを指定します。 クライアント シークレットは、エージェントの登録時にのみ使用されます。

    クライアント シークレットのスクリーンショット。

  4. サービス プリンシパルの管理者アクセス許可を付与したエージェント プールの名前を指定し、エージェントの登録手順を続行します。

Azure DevOps でのサービス プリンシパルの使用の詳細については、「 サービス プリンシパルとマネージド ID の使用」を参照してください。

サービス プリンシパル (Azure パブリック クラウド) を使用して Azure China Cloud から Azure パブリック クラウドの Azure DevOps 組織にエージェントを構成している場合は、次のエラーが発生する可能性があります。

ClientSecretCredential authentication failed: AADSTS90002: Tenant 'xxxxxxxxxxxxxx' not found. Check to make sure you have the correct tenant ID and are signing into the correct cloud. Check with your subscription administrator, this may happen if there are no active subscriptions for the tenant.

このエラーを解決するには、環境変数 $AZURE_AUTHORITY_HOSThttps://login.microsoftonline.com に設定して、ログイン URL を Azure パブリック クラウド ログインに設定し、エージェント config.cmdを実行します。

詳細については、 Azure in China 開発者ガイドエージェント登録オプションに関するヘルプEnvironmentCredentialClass を参照してください。