サービス接続の管理

Azure DevOps Services |Azure DevOps Server 2022 - Azure DevOps Server 2019 |TFS 2018

Note

Microsoft Team Foundation Server (TFS) 2018 以前のバージョンでは、ビルドとリリースの "パイプライン" は "定義"、"実行" は "ビルド"、"サービス接続" は "サービス エンドポイント"、"ステージ" は "環境"、"ジョブ" は "フェーズ" と呼ばれます。

Azure Pipelines から、ジョブでタスクを実行するための外部およびリモート サービスへの接続を作成できます。 接続を確立したら、サービス接続の表示、編集、セキュリティの追加を行うことができます。

たとえば、次のいずれかのカテゴリとそのサービスに接続できます。

  • Microsoft Azure サブスクリプション: Microsoft Azure サブスクリプションとのサービス接続を作成し、リリース パイプラインの Azure Web サイトデプロイ タスクでサービス接続の名前を使用します。
  • 別のビルド サーバーまたはファイル サーバー: GitHub リポジトリへの標準の GitHub Enterprise Server サービス接続を作成します。
  • オンラインの継続的インテグレーション環境: Git リポジトリの継続的インテグレーションのための Jenkins サービス接続を作成します。
  • リモート コンピューターにインストールされたサービス: マネージド サービス ID を持つ VM への Azure Resource Manager サービス接続を作成します。

ヒント

Azure Resource Manager サービス接続は、サービス接続の 1 つの例です。 詳細については、「 一般的なサービス接続の種類」を参照してください

前提条件

割り当てられたユーザー ロールに基づいて、サービス接続を作成、表示、使用、管理できます。 詳細については、「 ユーザーのアクセス許可」を参照してください。

サービス接続を作成する

Azure Pipelines のサービス接続を作成するには、次の手順を実行します。

  1. 組織 (https://dev.azure.com/{yourorganization}) にサインインし、プロジェクトを選択します。

  2. [プロジェクトの設定]>[サービス接続] を選択します。

  3. [ + 新しいサービス接続] を選択し、必要なサービス接続の種類を選択し、[ 次へ] を選択します。

  4. 認証方法を選択し、[ 次へ] を選択します。

  5. サービス接続のパラメーターを入力します。 パラメーターの一覧は、サービス接続の種類ごとに異なります。 詳細については、サービス接続の種類と関連パラメーターの一覧に関する記事を参照してください。

  6. [保存] を選択して接続を作成します。

    Azure Resource Manager 接続ダイアログ

  7. 接続が作成されてパラメーターが入力された後、接続を検証します。 検証リンクでは、入力した情報を使用した外部サービスへの REST 呼び出しが使用され、呼び出しが成功したかどうかが示されます。

  1. Team Foundation Server (TFS) で、上部のメニュー バーの [設定] アイコンから [サービス ] ページを開きます。

  2. [ + 新しいサービス接続 ] を選択し、必要なサービス接続の種類を選択します。

  3. サービス接続のパラメーターを入力します。 パラメーターの一覧は、サービス接続の種類ごとに異なります。 詳細については、 サービス接続の種類の一覧を参照してください。

  4. [OK] を選択して、接続を作成します。

    Azure Resource Manager 接続ダイアログ

  5. 接続が作成されてパラメーターが入力された後、接続を検証します。 検証リンクでは、入力した情報を使用した外部サービスへの REST 呼び出しが使用され、呼び出しが成功したかどうかが示されます。

Note

新しいサービス接続ウィンドウは、さまざまな種類のサービス接続に対して異なって表示され、パラメーターが異なる場合があります。 各 サービス接続の種類の共通サービス接続の種類 のパラメーターの一覧を参照してください。

サービス接続の編集

サービス接続を編集するには、次の手順を実行します。

  1. 組織 (https://dev.azure.com/{yourorganization}) にサインインし、プロジェクトを選択します。

  2. [プロジェクトの設定]>[サービス接続] を選択します。

  3. 編集するサービス接続を選択します。

  4. サービス接続の詳細については、サービス接続の [概要 ] タブを参照してください。 たとえば、種類、作成者、認証の種類などの詳細を確認できます。 たとえば、トークン、ユーザー名/パスワード、OAuth などです。

    Azure Resource Manager 接続の概要

  5. [概要] タブの横に、サービス接続を使用しているパイプラインの一覧を示す 使用状況履歴が表示されます。

    Azure Resource Managerの使用履歴

  6. サービス接続を更新するには、[ 編集] を選択します。 承認とチェックセキュリティおよび削除は、右上隅にあるその他のオプションの一部です。

    Azure Resource Managerその他のオプション

  1. TFS で、上部のメニュー バーの [設定] アイコンから [ サービス ] ページを開きます。

  2. [プロジェクトの設定]>[サービス接続] を選択します。

  3. 編集するサービス接続を選択します。

  4. サービス接続の詳細については、サービス接続の [概要 ] タブを参照してください。 たとえば、種類、作成者、認証の種類などの詳細を確認できます。 たとえば、トークン、ユーザー名/パスワード、OAuth などです。

    Azure Resource Manager 接続の概要

  5. [概要] タブの横に、サービス接続を使用しているパイプラインの一覧を示す 使用状況履歴が表示されます。

    Azure Resource Managerの使用履歴

  6. サービス接続を更新するには、[ 編集] を選択します。 承認とチェックセキュリティおよび削除は、右上隅にあるその他のオプションの一部です。

    Azure Resource Managerその他のオプション

サービス接続をセキュリティで保護する

サービス接続のセキュリティを管理するには、次の手順を実行します。

  1. 組織 (https://dev.azure.com/{yourorganization}) にサインインし、プロジェクトを選択します。

  2. [プロジェクトの設定]>[サービス接続] を選択します。

  3. 編集するサービス接続を強調表示します。

  4. 右上隅にあるその他のオプションに移動し、[ セキュリティ] を選択します。

    サービス接続ハブのセキュリティ

  1. TFS で、上部のメニュー バーの [設定] アイコンから [ サービス ] ページを開きます。

  2. ハブ レベルでユーザーのアクセス許可を管理するには、右上隅にあるその他のオプションに移動し、[ セキュリティ] を選択します。

    サービス接続ハブのセキュリティ

  3. サービス接続のセキュリティを管理するには、サービス接続を開き、右上隅にあるその他のオプションに移動し、[ セキュリティ] を選択します。

使用パターンに基づいて、サービス接続のセキュリティは次のカテゴリに分類されます。 必要に応じてアクセス許可を編集します。

ユーザーのアクセス許可

ユーザー ロールを使用してサービス接続を作成、表示、使用、管理できるユーザーを制御します。 Project settings>Service 接続では、継承されるハブ レベルのアクセス許可を設定できます。 各サービス接続のロールをオーバーライドすることもできます。

サービス接続のロール 目的
作成者 このロールのメンバーは、プロジェクトでサービス接続を作成できます。 共同作成者は既定でメンバーとして追加されます
Reader このロールのメンバーは、サービス接続を表示できます。
User このロールのメンバーは、ビルド パイプラインまたはリリース パイプラインを作成するとき、または yaml パイプラインを承認するときに、サービス接続を使用できます。
管理者 このロールのメンバーは、サービス接続を使用し、プロジェクトのサービス接続の他のすべてのロールのメンバーシップを管理できます。 プロジェクト管理者は、既定でメンバーとして追加されます。

Note

以前は、エンドポイント作成者グループとエンドポイント管理者グループを使用して、サービス接続を作成および管理できるユーザーを制御していました。 ロールを使用する純粋な RBAC モデルに移行しました。 既存のプロジェクトでの下位互換性のために、エンドポイント管理者グループが管理者ロールになり、Endpoint Creator グループが Creator ロールになり、既存のサービス接続の動作に変更がないことを保証します。

また、 プロジェクト間でのサービス接続の共有も導入しました。 この機能を使用すると、サービス接続は組織レベルのオブジェクトになりますが、既定では現在のプロジェクトを対象とします。 [ユーザーのアクセス許可] には、Project レベルと Organization レベルのアクセス許可が表示されます。 管理者ロールの機能は、2 つのアクセス許可レベル間で分割されます。

プロジェクト レベルのアクセス許可

プロジェクト レベルのアクセス許可は、プロジェクト スコープ内で前述したように、閲覧者、ユーザー、作成者、管理者のロールを持つユーザーのアクセス許可です。 継承があり、ハブ レベルおよびサービス接続ごとにロールを設定できます。

プロジェクト レベルの管理者は、次のタスクを実行できます。

  • プロジェクト レベルで他のユーザーとロールを管理する
  • サービス接続の名前を変更して説明を更新する
  • サービス接続を削除します。これにより、プロジェクトから削除されます

Azure Resource Manager プロジェクトのセキュリティ

サービス接続を作成したユーザーは、そのサービス接続の管理者ロールに自動的に追加されます。 ハブ レベルで管理者ロールが割り当てられたユーザーとグループは、継承が有効になっている場合に継承されます。

組織レベルのアクセス許可

組織レベルで設定されたアクセス許可は、サービス接続が共有されているすべてのプロジェクトに反映されます。 組織レベルのアクセス許可の継承はありません。

組織レベルの管理者は、次の管理タスクを実行できます。

  • 組織レベルのユーザーを管理する
  • サービス接続のすべてのフィールドを編集する
  • 他のプロジェクトとのサービス接続の共有と共有解除

Azure Resource Manager 組織のセキュリティ

サービス接続を作成したユーザーは、そのサービス接続の組織レベルの管理者ロールとして自動的に追加されます。 既存のすべてのサービス接続では、接続管理者は組織レベルの管理者になります。

パイプラインのアクセス許可

パイプラインのアクセス許可は、サービス接続を使用する権限を持つ YAML パイプラインを制御します。 パイプラインのアクセス許可では、クラシック パイプラインからのアクセスは制限されません。

次のオプションから選択できます。

  • サービス接続の [セキュリティ] タブの [パイプライン のアクセス許可 ] セクションの右上隅にあるその他のオプションから、すべてのパイプラインがサービス接続を使用するためのアクセスを開きます。

  • サービス接続をロックダウンし、選択した YAML パイプラインのみがサービス接続を使用できるようにします。 他の YAML パイプラインがサービス接続を参照している場合は、承認要求が発生します。これは接続管理者によって承認される必要があります。 これにより、クラシック パイプラインからのアクセスは制限されません。

Azure Resource Manager パイプラインのアクセス許可

プロジェクトのアクセス許可 - サービス接続のプロジェクト共有をクロスする

プロジェクトのアクセス許可は、サービス接続を使用できるプロジェクトを制御します。 既定では、サービス接続は他のプロジェクトと共有されません。

  • 他のプロジェクトとサービス接続を共有できるのは、 ユーザーアクセス許可 の組織レベルの管理者だけです。
  • プロジェクトとサービス接続を共有しているユーザーには、少なくともターゲット プロジェクトでのサービス接続の作成アクセス許可が必要です。
  • プロジェクトとサービス接続を共有するユーザーは、そのサービス接続のプロジェクト レベルの管理者になります。 プロジェクト レベルの継承は、ターゲット プロジェクトで オン に設定されます。
  • サービス接続名にはプロジェクト名が追加され、ターゲット プロジェクト スコープで名前を変更できます。
  • 組織レベルの管理者は、任意の共有プロジェクトからサービス接続の共有を解除できます。

Azure Resource Manager プロジェクトのアクセス許可

Note

プロジェクトのアクセス許可機能は、新しいサービス接続 UI に依存します。 この機能を有効にすると、古いサービス接続 UI は使用できなくなります。

サービス接続を使用する

サービス接続を作成したら、次の手順を実行して使用します。

  1. 接続名を azureSubscription (または同等の接続名) の値としてコードにコピーします。

YAML を使用している場合。

  1. 次のいずれかの手法を使用して、サービス接続を承認します。
  • サービス接続を使用するパイプラインを承認するには、Azure Pipelines に移動し、[設定] ページを開き、[サービス接続] を選択して、[ すべてのパイプラインで接続にこの接続オプションを使用することを許可する ] 設定を有効にします。

  • 特定のパイプラインのサービス接続を承認するには、[ 編集] を選択してパイプラインを開き、ビルドを手動でキューに登録します。 リソース承認エラーと、エラーに対する "リソースの承認" アクションが表示されます。 このアクションを選択して、サービス接続の承認済みユーザーとしてパイプラインを明示的に追加します。

独自の カスタム サービス接続を作成することもできます。

Note

サービス接続を変数で指定することはできません。

一般的なサービス接続の種類

Azure Pipelines では、既定で次のサービス接続の種類がサポートされています。

Azure クラシック | Azure Repos/TFS | Azure Resource Manager | Azure Service Bus | Bitbucket | Chef | Docker Hub またはその他の Git | | 汎用 | GitHub GitHub | Enterprise Server | Jenkins | Kubernetes | Maven | 故 宮 | Nuget | Python パッケージのダウンロード | Python パッケージのアップロード | Service Fabric | Ssh | Subversion | Visual Studio App Center |

Azure クラシック サービス接続

Azure 資格情報または Azure 管理証明書を使用して、Microsoft Azure サブスクリプションへの接続を定義してセキュリティで保護するには、次のパラメーターを使用します。

新しいサービス接続操作方法作成しますか?

パラメーター 説明
[認証の種類] 必須。 [資格情報] または [証明書ベース] を選択します。
[接続名] 必須。 タスクのプロパティでサービス接続を参照するために使用する名前。 Azure アカウントまたはサブスクリプションの名前ではありません。 YAML を使用している場合は、 スクリプトで azureSubscription または同等のサブスクリプション名の値として名前を使用します。
環境 必須。 Azure CloudAzure Stack、またはサブスクリプションが定義されている定義済みの Azure Government クラウドのいずれかを選択します。
サブスクリプション ID 必須。 Azure サブスクリプションの GUID に似た識別子 (サブスクリプション名ではありません)。 サブスクリプション ID は、Azure portalからコピーできます。
サブスクリプション名 必須。 Microsoft Azure サブスクリプションの名前。
ユーザー名 資格情報認証に必要です。 職場または学校アカウントのユーザー名 (たとえば @fabrikam.com)、 Microsoft アカウント (たとえば@live@hotmail)、サポートされていません)。
パスワード 資格情報認証に必要です。 上記で指定したユーザーのパスワード。
管理証明書 証明書ベースの認証に必要です。 発行設定 XML ファイルまたはAzure portalから管理証明書キーの値をコピーします。

サブスクリプションが Azure Government Cloud で定義されている場合は、サービス接続を構成する前に、アプリケーションが関連するコンプライアンス要件を満たしていることを確認してください。

Azure Repos

次のパラメーターを使用して、別の Azure DevOps 組織への接続を定義し、セキュリティで保護します。

パラメーター 説明
(認証) [ 基本 認証] または [ トークン ベース の認証] を選択します。
[接続名] 必須。 タスクのプロパティでサービス接続を参照するために使用する名前。 これは、Azure アカウントまたはサブスクリプションの名前ではありません。 YAML を使用している場合は、 名前を azureSubscription またはスクリプト内の同等のサブスクリプション名の値として使用します。
接続 URL 必須。 TFS またはその他の Azure DevOps 組織の URL。
ユーザー名 基本認証に必要です。 サービスに接続するユーザー名。
パスワード 基本認証に必要です。 指定したユーザー名のパスワード。
個人用アクセス トークン トークン ベースの認証に必要です (TFS 2017 以降と Azure Pipelines のみ)。 サービスでの認証に使用するトークン。 詳細については、こちらを参照してください

接続情報を検証するには、 接続の確認 リンクを使用します。

詳細については、「 Azure DevOps の個人用アクセス トークンを使用してアクセスを認証する」を参照してください。

Azure Resource Manager サービス接続

サービス プリンシパル認証 (SPA) または Azure マネージド サービス ID を使用して、Microsoft Azure サブスクリプションへの接続を定義し、セキュリティで保護するには、次のパラメーターを使用します。 ダイアログには、次の 2 つの主なモードがあります。

  • サブスクリプションの自動検出。 このモードでは、Azure Pipelines は、アクセス権を持つすべてのサブスクリプションとインスタンスについて Azure にクエリを実行します。 Azure Pipelines で現在サインインしている資格情報 (Microsoft アカウント、学校または職場アカウントを含む) が使用されます。

使用するサブスクリプションが表示されない場合は、Azure Pipelines からサインアウトし、適切なアカウント資格情報を使用してもう一度サインインします。

  • 手動サブスクリプション パイプライン。 このモードでは、Azure への接続に使用するサービス プリンシパルを指定する必要があります。 サービス プリンシパルによって、接続で使用できるリソースとアクセス レベルが指定されます。

この方法は、Azure Pipelines で現在サインインしている資格情報とは異なる資格情報を使用して Azure アカウントに接続する必要がある場合に使用します。 これはセキュリティを最大化し、アクセスを制限するための便利な方法です。 サービス プリンシパルは 2 年間有効です。

詳細については、「Microsoft Azure への接続」を参照してください。

Note

Azure サブスクリプションまたはインスタンスが表示されない場合、または接続の検証で問題が発生する場合は、「Azure Resource Manager のサービス接続のトラブルシューティング」を参照してください。

Azure Service Busサービス接続

Microsoft Azure Service Bus キューへの接続を定義してセキュリティで保護するには、次のパラメーターを使用します。

パラメーター 説明
[接続名] 必須。 タスクのプロパティでサービス接続を参照するために使用する名前。 この名前は、Azure アカウントまたはサブスクリプションの名前ではありません。 YAML を使用している場合は、 名前を azureSubscription またはスクリプト内の同等のサブスクリプション名の値として使用します。
Service Bus ConnectionString Azure Service Bus インスタンスの URL。 詳細については、こちらを参照してください。
Service Bus キュー名 既存のAzure Service Bus キューの名前。

Bitbucket クラウド サービス接続

承認 を付与 する OAuth を使用するか、 基本認証 でユーザー名とパスワードを使用して、Bitbucket Cloud への接続を定義します。 パイプラインが機能し続けるためには、リポジトリへのアクセスがアクティブなままである必要があります。

グランド 承認

パラメーター 説明
OAuth 構成 必須。 Bitbucket への OAuth 接続。

[基本認証]

パラメーター 説明
[接続名] 必須。 タスクのプロパティでサービス接続を参照するために使用する名前。 Azure アカウントまたはサブスクリプションの名前ではありません。 YAML を使用している場合は、 名前を azureSubscription またはスクリプト内の同等のサブスクリプション名の値として使用します。
ユーザー名 必須。 サービスに接続するユーザー名。
パスワード 必須。 指定したユーザー名のパスワード。

Chef サービスの接続

Chef オートメーション サーバーへの接続を定義してセキュリティで保護するには、次のパラメーターを使用します。

パラメーター 説明
[接続名] 必須。 タスクのプロパティでサービス接続を参照するために使用する名前。 Azure アカウントまたはサブスクリプションの名前ではありません。 YAML を使用している場合は、 名前を azureSubscription またはスクリプト内の同等のサブスクリプション名の値として使用します。
サーバー URL 必須。 Chef オートメーション サーバーの URL。
ノード名 (ユーザー名) 必須。 接続するノードの名前。 通常、これはユーザー名です。
クライアント キー 必須。 Chef .pem ファイルで指定されたキー。

Docker ホスト サービス接続

Docker ホストへの接続を定義してセキュリティで保護するには、次のパラメーターを使用します。

パラメーター 説明
[接続名] 必須。 タスクのプロパティでサービス接続を参照するために使用する名前。 Azure アカウントまたはサブスクリプションの名前ではありません。 YAML を使用している場合は、 スクリプトで azureSubscription または同等のサブスクリプション名の値として名前を使用します。
サーバー URL 必須。 Docker ホストの URL。
CA 証明書 必須。 ホストでの認証に使用する信頼された証明機関証明書。
Certificate 必須。 ホストでの認証に使用するクライアント証明書。
キー 必須。 Docker key.pem ファイルで指定されたキー。

Docker ホストへの接続の保護の詳細については、「Docker デーモン ソケットの保護」を参照してください。

Docker Registry サービス接続

次のパラメーターを使用して、Azure Container RegistryまたはDocker Hubなどのコンテナー レジストリへの接続を定義します。

Azure Container Registry

パラメーター 説明
[接続名] 必須。 タスク入力でサービス接続を参照するために使用する名前。
Azure サブスクリプション 必須。 サービス接続の作成に使用するコンテナー レジストリを含む Azure サブスクリプション。
Azure Container Registry 必須。 サービス接続の作成に使用するAzure Container Registry。

Docker Hubまたはその他

パラメーター 説明
[接続名] 必須。 タスク入力でサービス接続を参照するために使用する名前。
Docker レジストリ 必須。 Docker レジストリの URL。
Docker ID 必須。 Docker アカウント ユーザーの識別子。
パスワード 必須。 上記で識別したアカウント ユーザーのパスワード。 (Docker Hubにはパスワードではなく PAT が必要です)。
Email 省略可能。 通知を受信する電子メール アドレス。

その他の Git サービス接続

外部 Git リポジトリ サーバーへの接続を定義してセキュリティで保護するには、次のパラメーターを使用します。 GitHubGitHub Enterprise Server には特定のサービス接続があります。

パラメーター 説明
[接続名] 必須。 タスクのプロパティでサービス接続を参照するために使用する名前。 Azure アカウントまたはサブスクリプションの名前ではありません。 YAML を使用している場合は、 スクリプトで azureSubscription または同等のサブスクリプション名の値として名前を使用します。
サーバー URL 必須。 Git リポジトリ サーバーの URL。
Azure Pipelines からこの Git サーバーへのアクセスを試みる オンにすると、Azure Pipelines は、パイプラインの実行をキューに登録する前に、リポジトリへの接続を試みます。 この設定を無効にすると、パブリックにアクセスできないリポジトリを操作するときのパフォーマンスを向上させることができます。 その他の Git リポジトリにパブリックにアクセスできない場合、CI トリガーは機能しないことに注意してください。 手動またはスケジュールされたパイプラインの実行のみを開始できます。
ユーザー名 必須。 Git リポジトリ サーバーに接続するユーザー名。
パスワード/トークン キー 必須。 指定したユーザー名のパスワードまたはアクセス トークン。

詳細については、「 成果物ソース」を参照してください。

汎用サービス接続

任意のジェネリック型のサービスまたはアプリケーションへの接続を定義してセキュリティで保護するには、次のパラメーターを使用します。

パラメーター 説明
[接続名] 必須。 タスクのプロパティでサービス接続を参照するために使用する名前。 Azure アカウントまたはサブスクリプションの名前ではありません。 YAML を使用している場合は、 スクリプトで azureSubscription または同等のサブスクリプション名の値として名前を使用します。
サーバー URL 必須。 サービスの URL。
ユーザー名 省略可能。 サービスに接続するユーザー名。
パスワード/トークン キー 省略可能。 指定したユーザー名のパスワードまたはアクセス トークン。

GitHub サービス接続

GitHub リポジトリへの接続を定義するには、次のパラメーターを使用します。

ヒント

その他の Git サーバーGitHub Enterprise Server 接続には、特定のサービス接続があります。

パラメーター 説明
承認の選択 必須。 承認トークンまたは個人用アクセス トークン付与します。 以下のメモを参照してください。
トークン 個人用アクセス トークンの承認に必要です。 以下のメモを参照してください。
[接続名] 必須。 タスクのプロパティでサービス接続を参照するために使用する名前。 Azure アカウントまたはサブスクリプションの名前ではありません。 YAML を使用している場合は、 名前を azureSubscription またはスクリプト内の同等のサブスクリプション名の値として使用します。

Note

[承認の選択] オプションで [承認の付与] を選択すると、ダイアログに [承認] ボタンが表示され、GitHub 署名ページが開きます。 [個人用アクセス トークン] を選択した場合は、[トークン] ボックスに貼り付けます。 ダイアログには、トークンの推奨されるスコープ ( リポジトリ、ユーザー、admin:repo_hook) が表示されます。 詳細については、「 コマンド ラインで使用するアクセス トークンを作成する 」を参照してください。次に、次の手順を実行して、GitHub アカウントをプロファイルに登録します。

  1. Azure Pipelines ページの見出しの右側にあるアカウント名からプロファイルを開きます。
  2. 左側の列の上部にある [ 詳細] で 、[ セキュリティ] を選択します。
  3. [Personal access tokens] (個人用アクセス トークン) を選択します。
  4. [ 追加] を選択し、トークンの作成に必要な情報を入力します。

詳細については、「 成果物ソース - バージョン管理」を参照してください。

GitHub Enterprise Server サービス接続

GitHub リポジトリへの接続を定義するには、次のパラメーターを使用します。

ヒント

その他の Git サーバー標準の GitHub サービス接続には、特定のサービス接続があります。

パラメーター 説明
承認の選択 必須。 個人用アクセス トークンユーザー名とパスワード、または OAuth2 のいずれか。 以下のメモを参照してください。
[接続名] 必須。 タスクのプロパティでサービス接続を参照するために使用する名前。 これは、Azure アカウントまたはサブスクリプションの名前ではありません。 YAML を使用している場合は、 名前を azureSubscription またはスクリプト内の同等のサブスクリプション名の値として使用します。
サーバー URL 必須。 サービスの URL。
信頼されていない TLS/SSL 証明書を受け入れる TFS サービス ロールまたは エージェントをホストしているコンピューターに証明書をインストールする代わりに、クライアントが自己署名証明書を受け入れるようにするには、このオプションを設定します。
トークン 個人用アクセス トークンの承認に必要です。 以下のメモを参照してください。
ユーザー名 ユーザー名とパスワードの認証に必要です。 サービスに接続するユーザー名。
パスワード ユーザー名とパスワードの認証に必要です。 指定したユーザー名のパスワード。
OAuth 構成 OAuth2 承認に必要です。 アカウントで指定された OAuth 構成。
GitHub Enterprise Server の構成 URL URL は OAuth 構成からフェッチされます。

Note

[個人用アクセス トークン (PAT)] を選択した場合は、[トークン] ボックスに PAT を貼り付ける必要があります。 ダイアログには、トークンの推奨されるスコープ ( リポジトリ、ユーザー、admin:repo_hook) が表示されます。 詳細については、「 コマンド ラインで使用するアクセス トークンを作成する 」を参照してください。次に、次の手順を実行して、GitHub アカウントをプロファイルに登録します。

  1. Azure Pipelines ページの見出しの右側にあるアカウント名からプロファイルを開きます。
  2. 左側の列の上部にある [ 詳細] で 、[ セキュリティ] を選択します。
  3. [Personal access tokens] (個人用アクセス トークン) を選択します。
  4. [ 追加] を選択し、トークンの作成に必要な情報を入力します。

Jenkins サービス接続

Jenkins サービスへの接続を定義するには、次のパラメーターを使用します。

パラメーター 説明
[接続名] 必須。 タスクのプロパティでサービス接続を参照するために使用する名前。 Azure アカウントまたはサブスクリプションの名前ではありません。 YAML を使用している場合は、 名前を azureSubscription またはスクリプト内の同等のサブスクリプション名の値として使用します。
サーバー URL 必須。 サービスの URL。
信頼されていない TLS/SSL 証明書を受け入れる TFS サービス ロールまたは エージェントをホストしているコンピューターに証明書をインストールする代わりに、クライアントが自己署名証明書を受け入れるようにするには、このオプションを設定します。
ユーザー名 必須。 サービスに接続するユーザー名。
パスワード 必須。 指定したユーザー名のパスワード。

詳細については、「 Azure Pipelines と Jenkins および Artifact sources - Jenkins の統合」を参照してください。

Kubernetes サービス接続

Kubernetes クラスターへの接続を定義する場合は、次のパラメーターを使用します。 次のサービス接続オプションから選択します。

  • Azure サブスクリプション
  • サービス アカウント
  • Kubeconfig

Azure サブスクリプション オプション

パラメーター 説明
[接続名] 必須。 タスク入力でサービス接続を参照するために使用する名前。
Azure サブスクリプション 必須。 サービス接続の作成に使用するクラスターを含む Azure サブスクリプション。
クラスター Azure Kubernetes Service クラスターの名前。
名前空間 クラスター内の名前空間。

Azure RBAC 対応クラスターの場合、選択した名前空間に RoleBinding オブジェクトと共に ServiceAccount が作成されるため、作成された ServiceAccount は選択した名前空間でのみアクションを実行できます。

Azure RBAC が無効になっているクラスターの場合、選択した名前空間に ServiceAccount が作成されますが、作成された ServiceAccount にはクラスター全体の特権があります (名前空間間)。

Note

このオプションは、サービス接続作成者が 異なる Azure テナント間でアクセスできるすべてのサブスクリプションを一覧表示します。 他の Azure テナントのサブスクリプションが表示されない場合は、それらのテナントで Azure AD のアクセス許可を確認してください。

サービス アカウント オプション

パラメーター 説明
[接続名] 必須。 タスク入力でサービス接続を参照するために使用する名前。
サーバー URL 必須。 クラスターの API サーバー URL。
Secret デプロイに使用するサービス アカウントに関連付けられているシークレット

次のコマンドを使用して、サーバー URL をフェッチします。

kubectl config view --minify -o 'jsonpath={.clusters[0].cluster.server}'

クラスターに接続して認証するために必要な Secret オブジェクトをフェッチするには、次の一連のコマンドを使用します。

kubectl get serviceAccounts <service-account-name> -n <namespace> -o 'jsonpath={.secrets[*].name}'

次のコマンドで、前の service-account-secret-name コマンドの出力に置き換えます。

kubectl get secret <service-account-secret-name> -n <namespace> -o json

YAML フォームでフェッチされた Secret オブジェクトをコピーして、Secret テキスト フィールドに貼り付けます。

Note

サービス アカウント オプションを使用する場合は、目的のサービス アカウントにeditClusterRoleアクセス許可を付与する RoleBinding が存在することを確認します。 これは、選択した名前空間にオブジェクトを作成するために Azure Pipelines によってサービス アカウントを使用できるようにするために必要です。

Kubeconfig オプション

パラメーター 説明
[接続名] 必須。 タスク入力でサービス接続を参照するために使用する名前。
Kubeconfig 必須。 kubeconfig ファイルの内容。
Context クラスターの識別に使用される kubeconfig ファイル内のコンテキスト。

Maven サービス接続

Maven リポジトリへの接続を定義してセキュリティで保護する場合は、次のパラメーターを使用します。

パラメーター 説明
[接続名] 必須。 タスクのプロパティでサービス接続を参照するために使用する名前。 Azure アカウントまたはサブスクリプションの名前ではありません。 YAML を使用している場合は、 名前を azureSubscription またはスクリプト内の同等のサブスクリプション名の値として使用します。
レジストリ URL 必須。 Maven リポジトリの URL。
レジストリ ID 必須。 これは、Maven が接続しようとしているリポジトリ/ミラーの ID 要素と一致するサーバーの ID です。
ユーザー名 接続の種類が [ユーザー名] と [パスワード] の場合に必要です。 認証用のユーザー名。
パスワード 接続の種類が [ユーザー名] と [パスワード] の場合に必要です。 そのユーザー名のパスワード。
個人用アクセス トークン 接続の種類が 認証トークンの場合に必要です。 サービスでの認証に使用するトークン。 詳細については、こちらを参照してください

npm サービス接続

npm サーバーへの接続を定義してセキュリティで保護する場合は、次のパラメーターを使用します。

パラメーター 説明
[接続名] 必須。 タスクのプロパティでサービス接続を参照するために使用される名前。 Azure アカウントまたはサブスクリプションの名前ではありません。 YAML を使用している場合は、 名前を azureSubscription またはスクリプト内の同等のサブスクリプション名の値として使用します。
レジストリ URL 必須。 npm サーバーの URL。
ユーザー名 接続の種類が [ユーザー名] と [パスワード] の場合に必要です。 認証用のユーザー名。
パスワード 接続の種類が [ユーザー名] と [パスワード] の場合に必要です。 そのユーザー名のパスワード。
個人用アクセス トークン 接続の種類が 外部 Azure Pipelines の場合に必要です。 サービスでの認証に使用するトークン。 詳細については、こちらを参照してください

NuGet サービス接続

NuGet サーバーへの接続を定義してセキュリティで保護する場合は、次のパラメーターを使用します。

パラメーター 説明
[接続名] 必須。 タスクのプロパティでサービス接続を参照するために使用される名前。 Azure アカウントまたはサブスクリプションの名前ではありません。 YAML を使用している場合は、 スクリプトで azureSubscription または同等のサブスクリプション名の値として名前を使用します。
フィード URL 必須。 NuGet サーバーの URL。
ApiKey 接続の種類が ApiKey の場合は必須です。 認証キー。
個人用アクセス トークン 接続の種類が 外部 Azure Pipelines の場合は必須です。 サービスで認証するために使用するトークン。 詳細については、こちらを参照してください
ユーザー名 接続の種類が 基本認証の場合は必須です。 認証用のユーザー名。
パスワード 接続の種類が 基本認証の場合は必須です。 そのユーザー名のパスワード。

Azure Artifacts やその他の NuGet リポジトリで認証するように NuGet を構成するには、「 NuGet の認証」を参照してください。

Python パッケージのダウンロード サービス接続

Python パッケージをダウンロードするための Python リポジトリへの接続を定義してセキュリティで保護する場合は、次のパラメーターを使用します。

パラメーター 説明
[接続名] 必須。 タスク のプロパティでサービス接続を参照するために使用される名前。 Azure アカウントまたはサブスクリプションの名前ではありません。 YAML を使用している場合は、 スクリプトで azureSubscription または同等のサブスクリプション名の値として名前を使用します。
ダウンロード用の Python リポジトリ URL 必須。 Python リポジトリの URL。
個人用アクセス トークン 接続の種類が 認証トークンの場合は必須です。 サービスで認証するために使用するトークン。 詳細については、こちらを参照してください
ユーザー名 接続の種類が [ユーザー名] と [パスワード] の場合は必須です。 認証用のユーザー名。
パスワード 接続の種類が [ユーザー名] と [パスワード] の場合は必須です。 そのユーザー名のパスワード。

Python パッケージアップロード サービス接続

Python パッケージをアップロードするための Python リポジトリへの接続を定義してセキュリティで保護する場合は、次のパラメーターを使用します。

パラメーター 説明
[接続名] 必須。 タスク のプロパティでサービス接続を参照するために使用される名前。 Azure アカウントまたはサブスクリプションの名前ではありません。 YAML を使用している場合は、 スクリプトで azureSubscription または同等のサブスクリプション名の値として名前を使用します。
アップロード用の Python リポジトリ URL 必須。 Python リポジトリの URL。
EndpointName 必須。 ツインのアップロードに使用される一意のリポジトリ名。 スペースと特殊文字は使用できません。
個人用アクセス トークン 接続の種類が 認証トークンの場合は必須です。 サービスで認証するために使用するトークン。 詳細については、こちらを参照してください
ユーザー名 接続の種類が [ユーザー名] と [パスワード] の場合は必須です。 認証用のユーザー名。
パスワード 接続の種類が [ユーザー名] と [パスワード] の場合は必須です。 そのユーザー名のパスワード。

Service Fabric サービス接続

Service Fabric クラスターへの接続を定義してセキュリティで保護する場合は、次のパラメーターを使用します。

パラメーター 説明
[接続名] 必須。 タスク のプロパティでサービス接続を参照するために使用される名前。 Azure アカウントまたはサブスクリプションの名前ではありません。 YAML を使用している場合は、 スクリプトで azureSubscription または同等のサブスクリプション名の値として名前を使用します。
クラスター エンドポイント 必須。 クラスターの TCP エンドポイント。
サーバー証明書の拇印 接続の種類が 証明書ベース または Azure Active Directory の場合は必須です。
クライアント証明書 接続の種類が 証明書ベースの場合は必須です。
パスワード 接続の種類が 証明書ベースの場合は必須です。 証明書パスワード。
ユーザー名 接続の種類が Azure Active Directory の場合は必須です。 認証用のユーザー名。
パスワード 接続の種類が Azure Active Directory の場合は必須です。 そのユーザー名のパスワード。
Windows セキュリティを使用する 接続の種類が [その他] の場合は必須です。
クラスター SPN 接続の種類が [その他] で Windows セキュリティを使用している場合は必須です。

SSH サービス接続

Secure Shell (SSH) を使用してリモート ホストへの接続を定義してセキュリティで保護する場合は、次のパラメーターを使用します。

パラメーター 説明
[接続名] 必須。 タスク のプロパティでサービス接続を参照するために使用される名前。 Azure アカウントまたはサブスクリプションの名前ではありません。 YAML を使用している場合は、 スクリプトで azureSubscription または同等のサブスクリプション名の値として名前を使用します。
ホスト名 必須。 リモート ホスト コンピューターまたは IP アドレスの名前。
ポート番号 必須。 接続先のリモート ホスト コンピューターのポート番号。 既定値はポート 22 です。
ユーザー名 必須。 リモート ホスト コンピューターに接続するときに使用するユーザー名。
パスワードまたはパスフレーズ キーペアを資格情報として使用する場合は、指定したユーザー名のパスワードまたはパスフレーズ。
秘密キー この種類の認証を使用している場合は、秘密キー ファイルの内容全体。

詳細については、「 SSH タスク 」および「SSH 経由でファイルをコピーする」を参照してください。

Subversion サービス接続

Subversion リポジトリへの接続を定義してセキュリティで保護する場合は、次のパラメーターを使用します。

パラメーター 説明
[接続名] 必須。 タスク のプロパティでサービス接続を参照するために使用される名前。 Azure アカウントまたはサブスクリプションの名前ではありません。 YAML を使用している場合は、 スクリプトで azureSubscription または同等のサブスクリプション名の値として名前を使用します。
サーバー リポジトリの URL 必須。 リポジトリの URL。
信頼されていない TLS/SSL 証明書を受け入れる クライアントがエージェント コンピューターにインストールされている自己署名証明書を受け入れるようにするには、このオプションを設定します。
領域名 省略可能。 ビルドまたはリリース パイプラインで複数の資格情報を使用する場合は、このパラメーターを使用して、サービス接続に指定された資格情報を含む領域を指定します。
ユーザー名 必須。 サービスに接続するユーザー名。
パスワード 必須。 指定したユーザー名のパスワード。

Visual Studio App Center サービス接続

Visual Studio App Center への接続を定義してセキュリティで保護する場合は、次のパラメーターを使用します。

パラメーター 説明
[接続名] 必須。 タスク のプロパティでサービス接続を参照するために使用される名前。 Azure アカウントまたはサブスクリプションの名前ではありません。 YAML を使用している場合は、 スクリプトで azureSubscription または同等のサブスクリプション名の値として名前を使用します。
API トークン 必須。 サービスで認証するために使用するトークン。 詳細については、 API ドキュメントを参照してください。

その他のサービス接続の拡張機能

その他のサービス接続の種類とタスクは、拡張機能としてインストールできます。 拡張機能で使用できるサービス接続の例を次に示します。

  • Azure Pipelines の TFS 成果物。 TFS マシンが Azure Pipelines から直接到達できない場合でも、TFS サービス接続と チーム ビルド (外部) 成果物を使用して、Azure Pipelines を使用してオンプレミスの TFS ビルドをデプロイします。 詳細については、 外部 TFSこのブログ投稿を参照してください。

  • Azure Pipelines の TeamCity アーティファクト。 この拡張機能は、TeamCity サービス接続を介した TeamCity との統合を提供し、TeamCity で生成された成果物を Azure Pipelines を使用してデプロイできるようにします。 詳細については、 TeamCity を参照してください。

  • System Center Virtual Machine Manager (SCVMM) 統合。 SCVMM サーバーに接続して仮想マシンをプロビジョニングし、チェックポイントの管理、仮想マシン (VM) の開始と停止、PowerShell スクリプトの実行などのアクションを実行します。

  • VMware リソースのデプロイ。 Visual Studio Team Servicesまたは TFS から VMware vCenter Server に接続してプロビジョニングします。 VMware 仮想マシンを起動、停止、またはスナップショット化します。

  • Power Platform Build Tools。 Microsoft Power Platform Build Toolsを使用して、Microsoft Power Platform 上に構築されたアプリに関連する一般的なビルドおよび展開タスクを自動化します。 拡張機能をインストールした後、 Power Platform サービスの接続の種類には次のプロパティがあります。

パラメーター 説明
接続名 必須。 タスクのプロパティでこのサービス接続を参照するために使用する名前。
サーバー URL 必須。 Power Platform インスタンスの URL。 例: https://contoso.crm4.dynamics.com
テナント ID 必須。 認証先のテナント ID (Azure portalのディレクトリ ID とも呼ばれます)。 テナント ID を表示し、 https://aka.ms/buildtools-spn アプリケーション ID と関連するクライアント シークレットを構成するスクリプトを参照してください。 アプリケーション ユーザーも CDS で作成する必要があります
アプリケーション ID 必須。 認証に使用する ID をAzure アプリケーションします。
アプリケーション ID のクライアント シークレット 必須。 ID を証明するために使用される、上記のアプリケーション ID に関連付けられているサービス プリンシパルのクライアント シークレット。

独自の カスタム サービス接続を作成することもできます。

ヘルプとサポート