演習 - サービス接続を設定する
この演習では、サービス接続の操作方法について見ていきます。
注意
このチュートリアルに従うには、既存のストレージ アカウントを含む既存の Azure サブスクリプションが必要です。
手順
環境へのサービス接続を設定して、デプロイする環境へのセキュリティで保護された安全な接続を作成できます。
サービス接続は、他の場所から安全な方法でリソースを取得するためにも使用されます。
たとえば、GitHub からソースコードを取得することが必要になる場合があります。 このケースでは、Azure へのサービス接続を構成する方法を見てみましょう。
Parts Unlimited プロジェクトのメイン メニューから、画面の下部にある [プロジェクト設定] をクリックします。
プロジェクト設定ペインの [パイプライン] セクションで、[サービス接続] をクリックします。 [+新しいサービス接続] の横にあるドロップダウンをクリックします。
画面を見ておわかりのように、さまざまな種類のサービス接続があります。 次の接続を作成できます。
- Apple App Store。
- Docker レジストリ
- Bitbucket。
- Azure Service Bus。
この場合は、新しい Azure リソースをデプロイするため、Azure Resource Manager オプションを使用します。
[Azure Resource Manager] をクリックし、新しいサービス接続を追加します。
[接続名] を「Azure Resource Manager Service Connection」に設定し、Azure [サブスクリプション] をクリックして、既存の [リソース グループ] を選びます。
注意
この時点で、Azure へのサインインを求めるメッセージが表示される場合があります。 その場合は、まずサインインしてください。
作成しているのは、サービス プリンシパルであることに注意してください。 Azure に対する認証には、サービス プリンシパルを使用します。 ウィンドウの上部には、代わりにマネージド ID 認証を設定するオプションが表示されます。
サービス プリンシパルは、特定のサブスクリプションとリソース グループのアクセス許可のみを持つサービス アカウントです。 これにより、パイプラインから安全に接続することができます。
重要
Azure とのサービス接続を作成すると、サブスクリプションまたはリソース グループに対する共同作成者ロールがサービス プリンシパルに付与されます。 サービス プリンシパルの BLOB ストレージにデータをアップロードするだけでは十分ではありません。 Storage Blob データ共同作成者ロールにサービス プリンシパルを明示的に追加する必要があります。 そうしないと、承認アクセス許可の不一致エラーが発生し、リリースが失敗します。
[OK] をクリックして作成します。 その後、一覧に表示されます。
メインの Parts Unlimited メニューで、[パイプライン]、[リリース]、[編集] の順にクリックして、リリース パイプラインを表示します。 リンクをクリックして、ステージ タスクを表示します。
すると、現在のタスクの一覧が表示されます。 空のテンプレートから始めたので、まだタスクはありません。 各ステージでは、多くのタスクを実行できます。
+ の右側にある + 記号をクリックして、新しいタスクを追加します。 使用可能なタスクの種類の一覧を表示されます。
検索ボックスに単語「storage」を入力し、ストレージ関連のタスクの一覧を表示します。 これには、標準のタスクと Marketplace から入手できるタスクが含まれます。
Azure ファイル コピー タスクを使用して、ソース ファイルの 1 つをストレージ アカウント コンテナーにコピーします。
Azure ファイル コピー タスクの種類の上にマウス ポインターを移動し、表示されたら [追加] をクリックします。 タスクはステージに追加されますが、さらに構成する必要があります。
ファイル コピー タスクをクリックして、必要な設定を確認します。 最新のタスク バージョンを使用します。
[表示名] を「Backup website zip file」に設定し、[ソース] の横にある省略記号をクリックして、次に示すようにファイルを見つけ、[OK] をクリックして選びます。
次に、Azure サブスクリプションへの接続に関する詳細を指定する必要があります。 最も簡単で安全な方法は、新しいサービス接続を使用することです。
[Azure サブスクリプション] ドロップダウン リストから、作成した [Azure Resource Manager サービス接続] を見つけて選択します。
[宛先の種類] ドロップダウン リストから [Azure BLOB] を選択し、[RM ストレージ アカウント] と [コンテナー名] からストレージ アカウントを選択し、コンテナーの名前を入力して、画面の上部にある [保存]、[OK] をクリックします。
タスクをテストするには、[リリースの作成] をクリックして、[新しいリリースの作成] ペインで [作成] をクリックします。
新しいリリースをクリックして詳細を表示します。
続行できるように、[リリース] ページでリリースを承認します。
開発ステージが完了すると、Azure ストレージ アカウントにファイルが表示されます。
サービス接続を使用する主な利点は、この種類の接続がプロジェクト設定内の 1 か所で管理されることです。 パイプライン タスク全体にわたる接続の詳細には関与しません。