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 を追加します。