PostmanコレクションURLを使用してREST APIでDASTスキャンを構成する

概要

このセクションでは、AppScan Enterprise のREST APIを使用して、PostmanコレクションのURLを提供することにより、動的アプリケーションセキュリティテスト(DAST)スキャンを構成する方法を説明します。この機能は、既存のPostmanコレクションを使用してスキャン設定を自動化することを可能にします。これは、AppScan ダイナミック分析クライアント(ADAC)ジョブやその他の動的スキャンを設定する際に特に便利です。このAPI駆動の方法は、以前はAppScan Standardを通じて手動で管理されていた手順を置き換え、AppScan Enterprise内で直接この設定を実行する手段を提供します。

注:
  • このAPIは、DASTConfigジョブ専用であり、Content-Scanジョブには使用できません。
  • DASTConfigジョブにすでにPostmanコレクションURLが設定されている場合、このAPIを使用するとそのURLが置き換えられます。

PostmanのURL設定用APIエンドポイント

  • POST /jobs/{jobId}/dastconfig/postman/url/add – DASTConfigジョブにPostmanコレクションのURLを追加します。

前提条件

  • 既存のDASTConfigジョブが必要です。次の既存のAPIのいずれかを使用して、DASTConfigジョブを作成できます。
    • POST/ジョブ/{templateId} /dastconfig/createjob
    • POST/jobs/createjobBasedOnTemplateFile
    • POST/ジョブ
  • DASTConfigジョブのjobId(整数)が必要です。この情報は、GET /folders/{folderId}/jobs APIエンドポイントを使用して取得できます。
  • APIリクエストの認証には有効なasc_xsrf_tokenが必要であり、POST /login APIエンドポイントから取得できます。このトークンは、通常 asc_xsrf_token またはそれに類似した名前で、対応する値と共にリクエストヘッダーとして送信されるべきです。
  • パフォーマンスの問題を避けるために、「レギュラースキャン」テンプレートを使用することをお勧めします。
    注:
    ウェブAPIが認証を必要とする場合、認証リクエストには有効な資格情報(APIキー、基本認証、またはその他の固定トークンやパスワード)を含める必要があります。許可要求はコレクションの最初の要求の 1 つである必要があります。デフォルトでは、AppScan Enterprise は認証リクエストの最初の7件を調査しますが、必要に応じて、ADACクライアントの「高度な設定」>「Postman: ログイン分析サンプルサイズ」でこれを増やすことができます。

APIリファレンス: POST /jobs/{jobId}/dastconfig/postman/url/add

目的: このAPIエンドポイントは、AppScan Enterpriseで既存のDASTConfigジョブを設定し、スキャン範囲とAPIの相互作用を定義するために、URLを介して提供されるPostmanコレクションを使用できるようにします。

HTTPメソッドとエンドポイント: POST /jobs/{jobId}/dastconfig/postman/url/add

パスパラメータ:

  • jobId (整数, 必須): DASTConfigジョブのユニークな識別子。

リクエストパラメータ:

  • postmanCollectionUrl(文字列、必須):PostmanコレクションのURL(例:http://example.com/collection.json)。
  • envVariablesUrl(文字列、オプション):Postman環境JSONファイルへのURL。
  • globalVariablesUrl(文字列、オプション):Postmanのグローバル変数JSONファイルへのURL。
  • postmanAdditionalFiles(ファイル、オプション):Postmanコレクションに必要な外部ファイルを含むzipアーカイブ(例:data.zip)。最大サイズ:80 MB。
  • domainsToBeTested(文字列、必須):コレクションに基づいてスキャンされるドメインのカンマ区切りリスト(例:api.example.com, auth.example.com)。

リクエストヘッダー(例):

  • asc_xsrf_token: {your_obtained_token_value}
  • Content-Type: multipart/form-datapostmanAdditionalFilesが含まれている場合)またはapplication/json(URLのみが送信される場合、ただしこのAPIにはform-dataが一般的に推奨されます)。
注:
  • APIを構成する際には、特にpostmanAdditionalFilesを含める場合、form-dataオプションを使用してください。上記にリストされているパラメーター名はフォームフィールドのキー(名前)であり、URL、ファイルアップロード、およびドメインリストはそれぞれの値です。
  • ターゲットAPI内の認証が、Postmanコレクション内で適切に処理されていることを確認してください(前提条件やコレクション/環境変数内で言及されている通りに)。
  • Postmanコレクションバージョン2.0以降がサポートされています。
  • PostmanコレクションのURL拡張子は.jsonである必要があります。
  • domainsToBeTestedに含まれていないドメインはスキャンされません。
  • DASTジョブにPostmanコレクションのURLを追加すると、そのURLはテンプレートファイルに保存されます。テンプレートには追加ファイルが含まれていません。それらにアクセスするには、SCANファイルをダウンロードしてください。
  • 1つのスキャンにつき、追加できるPostman Collection URLは1つだけです。2番目のコレクションURLをスキャンするには、そのコレクション用に新しいスキャンを作成してください。

応答:

  • 成功すると、APIはHTTPステータスコード200 OKを返します。
  • エラーの詳細については、APIのSwaggerドキュメントをご参照ください。