REST API を使用してスキャン・テンプレートを更新するためのショート・コード
ショート・コード
REST API /jobs/{jobId}/dastconfig/updatescant は、スキャン・ジョブの設定を更新するために使用します。値「scantNodeXpath」は、更新される構成の XPath を示します。一般的に使用される XPath のショート・コードがいくつか提供されるため、簡単に使用できます。
AppScan Enterprise で現在 REST API「updatedcant」に使用できるショート・コードを以下にリストします。
| ショート・コード | XPath |
|---|---|
| StartingUrl | //ScanConfiguration/Application/StartingUrls/StartingUrl |
| LoginUsername | //ScanConfiguration/UserInput/FormFiller/Group[@LogicalName='InternalAppScanUserName']/Value |
| LoginPassword | //ScanConfiguration/UserInput/FormFiller/Group[@LogicalName='InternalAppScanPassword']/Value |
| LoginMethod | //ScanConfiguration/SessionManagement/SessionManagementMode |
| CustomHeaders | //ScanConfiguration/customHeaders |
| AccountLockout | //ScanConfiguration/AdvancedScanOptions/Group [@LogicalName='TestOptions']/Key [@LogicalName='AccountLockoutNumOfAttempts']@Value |
| AdditionalDomains | //ScanConfiguration/Application/AdditionalServers |
| 除外 | //ScanConfiguration/ExploreFilters/RequestFilters |
使用例
これらの例では、scantNodeNewValue は変更可能な変数です。
開始 URL の変更:
{
"scantNodeXpath":"StartingUrl",
"scantNodeNewValue":"https://urlTest.com"
}
ログイン・パスワードの変更:
{
"scantNodeXpath":"LoginPassword",
"scantNodeNewValue":"passwordTest", "encryptNodeValue":true
}除外の変更:
{
"scantNodeXpath":"Exclusions",
"scantNodeNewValue":"<RequestFilter FilterType="Exclude"><Description>Microsoft SharePoint site removal URL</Description><PathPattern><ConfigPattern IsRegularExpression="True"><Pattern>.*/deleteweb.aspx</Pattern></ConfigPattern>
</PathPattern><ParametersPatterns />
</RequestFilter><RequestFilter FilterType="Exclude"><Description>test exclusion</Description><PathPattern><ConfigPattern IsRegularExpression="True"><Pattern>.*/error.aspx</Pattern></ConfigPattern></PathPattern><ParametersPatterns /></RequestFilter>"
}注:
すべての除外に説明、パターン、パラメーター・パターン (オプション) を設定する必要があります。REST API は、既存の除外設定を上書きします。したがって、追加ごとに除外の完全なリストを提供する必要があります。これは、複数の値を持つすべての構成のすべての更新に適用されます。
カスタム・ヘッダーの設定:
{
"scantNodeXpath":"CustomHeaders",
"scantNodeNewValue":"<customHeader><Name>Authorization</Name><HeaderValue>Bearer {0}</HeaderValue><ExtractValueFromBodyRegEx>(?i)value\\s*[:|=]\\s*[\"|']([A-Fa-f0-9]{16})[\"|']</ExtractValueFromBodyRegEx><Enabled>True</Enabled><Type>2</Type></customHeader>"
}注:
この例の ExtractValueFromBodyRegEx は、応答本文から値を抽出する正規表現です。正規表現内のグループ (丸括弧間の値) は、「HeaderValue 」に挿入され、Authorization: Bearer <グループの値> のようになります。
深度限界の設定:
{
"scantNodeXpath":"//ScanConfiguration/ExploreFilters/DepthLimit",
"shortcodeXPathValue":false,
"scantNodeNewValue":"25"
}注:
ショート・コードが提供されていない構成を更新するには、本体の json に shortcodeXPathValue:false を追加します。