<menu id="guoca"></menu>
<nav id="guoca"></nav><xmp id="guoca">
  • <xmp id="guoca">
  • <nav id="guoca"><code id="guoca"></code></nav>
  • <nav id="guoca"><code id="guoca"></code></nav>

    AppScan Enterprise REST API 示例

    樣本 1:使用 JavaScript 編寫的樣本腳本

    這些樣本提供使用應用程序安全管理 REST API 可執行的操作的示例。

    開始之前

    https://github.com/douglascrockford/JSON-js 下載 json2.js 幫助程序庫。

    關于此任務

    以下是要下載并使用的樣本 zip 文件:ASM_API_Samples_Javascript.zip ,以下是 zip 文件中包含的樣本腳本:

    • asm_api_summaries_issues_appfilter.js:此示例說明何登錄,在查詢過程中使用應用程序屬性獲取有關問題的基本摘要信息,以及注銷。
    • asm_api_summaries_issues_daterange.js:此示例說明如何登錄,使用日期范圍查詢獲取有關問題的基本摘要信息,以及注銷。
    • asm_sample_avg_issues_found_per_app_by_month.js:此示例說明按月獲取每個應用程序找到的平均問題數的方式。
    • asm_sample_count_issues_by_app_over_time.js:此示例說明逐月枚舉已發現新問題的應用程序列表的方式。
    • asm_sample_overdue_issues.js:此示例說明識別“逾期問題”的方式。

    過程

    1. 在硬盤驅動器上的任意位置解壓縮樣本 zip 文件。然后,將 json2.js 幫助程序庫復制到 .\3rdParty\json2.js 子文件夾中。

    2. 編輯 _your_connection_info.js 文件以指定 AppScan Enterprise Server 和用戶憑證的位置。

      注: common_functions.js 文件包含各種樣本使用的共享函數。請勿直接運行該文件。

    3. 通過從命令行使用 cscript 來運行任何其他 asm_xxxxx.js 文件。例如,c:/> cscript asm_api_summaries_issues_appfilter.js

    4. 或者,雙擊 runAll.bat 文件以運行所有樣本。


    啟用應用程序安全管理 REST API 交互式框架

    內置的 REST API 界面使您可以將 RESTful Web 服務可視化,這些 Web 服務用于創建和更新應用程序、設置用戶的應用程序訪問權以及添加或更新問題。使用框架可與 API 交互并獲得對 API 響應參數和選項的方式的清晰認識。

    開始之前

    注:

    1. 要為用戶啟用框架的 URL,產品管理員必須通過添加 ase.rest.doc.enabled=true 這行代碼來修改 \AppScan Enterprise\Liberty\usr\servers\ase\config\asc.properties 文件。否則,用戶嘗試訪問此 URL 時會遇到 404 錯誤頁。修改 asc.properties 文件后,重新啟動 HCL AppScan Enterprise Server 服務。
    2. 要訪問交互式 REST API 框架,必須將實例名稱命名為“ase”。

    關于此任務

    通過遵循此示例來使用 /application REST API 創建應用程序,從而學習如何使用交互式框架。

    過程

    1. 登錄到 AppScan Enterprise。

    2. 轉到 https://:9443/ase/api/pages/apidocs.html。對此 URL 設置書簽以供將來參考。

    3. 單擊應用程序以展開描述和信息。
      創建應用程序

    4. 單擊創建應用程序以展開操作詳細信息。
      創建應用程序

    5. 在“參數”部分中,單擊模型模式。
      參數中的模型模式

    6. 單擊“模型模式”編輯框中的文本以將文本作為 JSON 對象請求復制到 Parameter Value 框。
      JSON 對象請求

    7. 更改 JSON 元素的值。

      例如,將

      `{
      “attributeCollection”: {

      "attributeArray": [
        {
          "name": ""
        }     ]   },   "id": 0,   "name": "",   "description": "",   "dateCreated": "Timestamp",   "lastUpdated": "Timestamp" }`

      替換為

      { "attributeCollection": null, "id": 1, "name": "app1", "description": "template", "dateCreated": null, "lastUpdated": null }

    8. 執行請求并查看響應。
      執行請求并查看響應


    短代碼通過 REST API 更新掃描模板

    短代碼

    REST API /jobs/{jobId}/dastconfig/updatescant 用于更新掃描作業中的設置。“scantNodeXpath”值表明配置的 XPath 可以更新。為了更容易使用,我們為幾個常用的 Xpath 提供了短代碼。

    以下列出了 AppScan Enterprise 中當前可用于“updatescant” REST API 的短代碼:

    短代碼 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”中:承載者 <組值>*

    設置深度限制:

    {
     "scantNodeXpath":"http://ScanConfiguration/ExploreFilters/DepthLimit",
     "shortcodeXPathValue":false,
     "scantNodeNewValue":"25"
     }

    注: 要更新沒有提供短代碼的所有配置,請將 shortcodeXPathValue:false 添加到正文的 json中。


    本文章首發在 網安wangan.com 網站上。

    上一篇 下一篇
    討論數量: 0
    只看當前版本


    暫無話題~
    亚洲 欧美 自拍 唯美 另类