Azure Pipelinesの拡張機能

Azure Pipelinesの拡張機能を使用して、アプリケーションのデプロイのワークフローにContrastを統合できます。本項では、Contrastと連携するための拡張機能を設定する方法と手順を説明します。

拡張機能を設定する前に、Microsoftの拡張機能をインストールする権限があることを確認してください。アクセス権限をお持ちでない場合は、プロジェクトの拡張機能を要求できます。

Azure Pipelinesの拡張機能のインストールと設定

Azure Pipelinesの拡張機能をインストールして設定するには:

  1. Microsoftの手順に従って、 Contrast Integration という拡張機能を検索して、インストールします。

  2. サイドバーの下にあるProject Settings(プロジェクトの設定)を選択します。この設定を変更するには、プロジェクト管理グループに属しているか、十分な権限を持っている必要があります。

  3. プロジェクトの設定ページのPipelines(パイプライン)セクションで、Service connections(サービス接続)を選択します。

  4. New Service connection(新しいサービス接続)を選択し、Contrast Server Connectionを選択します。

  5. 全てのフィールドに、個人のキーから必要なデータを入力します。

注記

Contrast URLの末尾に/Contrastを含めず、ホストのみを指定してください。

Azure Pipelinesの拡張機能でタスクを設定

Azure Pipelinesの拡張機能で、リリースパイプラインまたはビルドパイプラインにタスクを設定するには:

  1. タスクを追加するパイプラインを選択して、Edit(編集)を選択します。

  2. リリースパイプラインの場合は、タスクを追加するステージを選択します。

  3. タスクを追加するために、省略符号(...)メニューをクリックして、Add an agentless job(エージェントレスジョブの追加)を選択します。

  4. エージェントレスジョブの横にある[+]ボタンをクリックして、Contrast Assess - Application Vulnerability Detectionタスクを追加します。

  5. 接続先とアプリケーションを選択するために、Contrast Service Connectionメニューで、接続したいサービス接続を選択します。Manage(管理)を選択して、Project Settings(プロジェクトの設定)ページのService connectionsに(サービス接続)の設定画面にアクセスすることもできます。

  6. Applicationメニューで、アプリケーションを1つ選択します。

  7. タスクの設定として、Allowed Status(許可するステータス)フィールドとBuild Number(ビルド番号)フィールドを使用して、Contrastからの結果にフィルターをかけます。結果にフィルターをかけたくない場合は、空欄のままにします。これらのフィールドで設定した値が、以降のフィールドで設定する条件に対して検証されます。

  8. 深刻度の設定に進み、深刻度ごとに許容する脆弱性の上限数を設定する必要があります。選択したアプリケーションに、その深刻度で許容する数を超える脆弱性がある場合、タスクは失敗になります。

ビルドパイプラインの場合のみ:タスクが失敗した場合にジョブが実行されないようにするには、Contrastのタスクを含むエージェントレスジョブへの依存をジョブに設定する必要があります。

  1. タスク失敗時に実行したくないジョブを選択します。

  2. Dependencies(依存関係)セクションで、Agentless job(エージェントレスジョブ)を追加します。

注記

このタスクは、エージェントレスジョブにのみ使用できます。

Azure Pipelinesのパイプラインにリリースゲートを追加

リリースゲートは、特定のアプリケーションの脆弱性が一定のしきい値を超えた場合に、デプロイを止める保護機能です。Azure Pipelinesの拡張機能を使用して、リリースゲートを追加するには:

  1. ゲートを追加するリリースパイプラインを検索して、Edit(編集)を選択します。

  2. ゲートを設定するステージとデプロイの条件を選択します。ゲートは、デプロイ前条件またはデプロイ後条件のいずれかになります。同じ条件に複数のゲートを追加することができます。

  3. ステージのデプロイ条件アイコンを選択し、トグルボタンを選択してGates(ゲート)を有効にします。

  4. Add(追加)をクリックし、Contrast Assess - Application Vulnerability Detectionを選択します。

  5. Contrast Service Connectionで、サービス接続を選択します。サービス接続を新規に作成するには、サービス接続のドロップダウンメニューの横にあるNew(新規)を選択して、全てのフィールドに入力し、OKを選択します。

    Refresh list(リストをリフレッシュ)を選択して、新規に作成した接続を選択します。

  6. Applicationフィールドをクリックするか、Refresh Applicationを(アプリケーションをリフレッシュ)を選択すると、アプリケーションの一覧が表示されます。リリースパイプラインで検証するアプリケーションを選択します。

  7. 必要に応じて、ゲートでの検証データを取得する際に、フィルターをかける脆弱性のステータスやビルド番号を選択できます。

  8. 深刻度ごとに許容される脆弱性の上限数を設定します。パイプラインがこのゲート達して検証が失敗した場合、パイプラインが有効になるか、検証がタイムアウトするまでサンプリングが要求され続けます。

    ステージのゲートの定義方法、およびゲートの設定方法については、Microsoftのドキュメントに詳しい説明があります。

ヒント

Evaluation(検証)オプションをカスタマイズして、ゲートの再検証までの時間を設定できます。例えば、この値を24時間に設定することで、ゲートが毎日検証されるようになります。これにより、パイプラインの実行を最初からやり直すことなく(または、手動での承認を構成している場合は承認が要求されずに)、脆弱性を修正して、必要なゲート条件を通過できます。