設定同時掃描
AppScan 360° SAST 包含兩個步驟:
- 準備掃描以進行分析。
一般使用者提交原始碼或二進位
.war檔(例如要掃描的檔案)時,preparer服務就會執行這項作業。 - 分析掃描。
此作業由
analyzer服務執行。對於此服務的輸入檔案,可由preparer或直接由使用者提供,他們使用所提供的工具(例如,AppScan Go!) 會選擇在其用戶端系統上執行 PREPARE。
您可以視需要設定 Preparer 和 Analyzer 的數量上限,以執行並行掃描,讓 Kubernetes 自動調整每個可用於掃描的服務數量。由於準備或分析的時間因掃描而異,因此每項作業都有專屬的並行性。
每項服務的最大數量取決於預期的尖峰掃描負載設定檔,也就是提交的掃描峰值數量、掃描原始碼/二進位的百分比,以及掃描 IRX 的百分比。
由於這些不明要素,因此可能無法在初始部署時定義最佳配置。AppScan 360° SAST 配置可根據實際掃描負載調整,並監控 RabbitMQ 佇列,以判斷掃描等待任一服務可用性的平均時間。
在安裝或重新設定 AppScan 360° SAST 時啟用下列內容,即可使用輸入存取 RabbitMQ 管理入口網站:
rabbitmq:
ingress:
enabled: true
hostname: <fqdn to access rabbitmq portal>
初始配置可指定相同數量的
preparers,而 analyzers 可隨時間調整。使用下表協助計算部分範例配置所需的總資源(最大)。註: 為達成並行目標,有兩件事需要考量:
- ASCP安裝期間發出的 AppScan 360° 授權數量。
- Kubernetes 配置與資源的可用性,以讓多個 Preparer 和 Analyzer 可同時執行。
每種資源的計算 = Preparer 數量 * 每個 Preparer 的資源 + Analyzer 數量 * 每個 Analyzer 的資源數量 + 每個 ASCP 的配接器數量 * 每個配接器的資源 + 剩餘服務的總資源(這些服務並未自動調整大小)。
| ASCP 配接器計數 | Preparer 計數 | Analyzer 計數 | MaxCPU | MaxRAM |
|---|---|---|---|---|
| 1 | 1 | 1 | 24 ((6*1)+(6*1)+(4*1)+4+2+2) | 60GB ((16*1)+(24*1)+(6*1)+6+4+4) |
| 3 | 3 | 3 | 56 ((6*3)+(6*3)+(4*3)+4+2+2) | 152GB ((16*3)+(24*3)+(6*3)+6+4+4) |
| 3 | 10 | 10 | 140 ((6*10)+(6*10)+(4*3)+4+2+2) | 452GB ((16*10)+(24*10)+(6*3)+6+4+4) |
| 3 | 5 | 10 | 110 ((6*5)+(6*10)+(4*3)+4+2+2) | 372GB ((16*5)+(24*10)+(6*3)+6+4+4) |
註: ASCP 配接器服務最多只能擴充 3 個。不需要進一步增加。