AppScan 360° Static Analysis 的系统需求

本部分介绍下载和部署 AppScan 360° Static Analysis 所需的操作系统和支持技术。有关设置所需组件的其他信息,请参阅此处

AppScan 360° Static Analysis 包包含以下元素:
  • AppScan 360° SAST gateway:扫描的主要入口点。
  • workflow-manager:编排 AppScan 360° SAST 扫描相关请求。
  • scan-manager:访存扫描工件和详细信息,并收集故障诊断信息。
  • preparer 服务:准备源代码并构建用于分析的工件。
  • analyzer 服务:评估 IRX 以识别漏洞。
  • ascp-adapter:用于监控扫描状态和进度以及处理结果和日志的 AppScan Central Platform 的接口。
  • RabbitMQ:用作 AppScan 360° SAST 组件之间通信的消息传递代理程序的附加组件服务。
注: 用于托管容器的系统的数量和配置取决于所需的并发级别(并行扫描的数量),以及要扫描的应用程序的大小。

系统需求和先决条件

使用 bash 脚本下载和部署 AppScan 360° Static Analysis,因此需要 Linux 环境。AppScan 360° Static Analysis 代理程序部署在本地或云端。
注: 在下载和部署 AppScan Central Platform 之前安装 AppScan Central Platform

下载 AppScan 360° SAST

Linux 系统:
  • RedHat 7.9 或更高版本,或 Ubuntu
  • Docker 或 containerd 运行时
  • Kubectl
  • Helm
需要使用 SAST 基本图表来推动部署过程。当前 AppScan 360° SAST 图表可通过两种方式下载到本地系统:
  • HCL Harbor
    • 具有 HCL 许可证和下载门户访问权的 HCL 标识。
    • 具有读取访问权和 AppScan 360° SAST 项目区域访问权的 HCL Harbour 帐户。
  • 存档安装
    • 具有 HCL 许可证和下载门户访问权的 HCL 标识。

集群设置

使用部署脚本将 AppScan 360° SAST 部署到 Kubernetes 集群。在部署 AppScan 360° SAST 之前,在 Kubernetes 集群中预配置以下附加组件服务:

资源需求

容器

对于每个静态容器,每个 Pod 都需要以下资源:

服务 CPU(最小值/最大值) RAM(最小值/最大值) 磁盘空间(最小值/最大值)
准备器 2/4 16GB/28GB
分析器 2/4 16GB/28GB
工作流程管理器 1/2 2GB/4GB
扫描管理器 1/2 2GB/4GB
ASCP 适配器 1/2 2GB/4GB
网关 1/2 2GB/4GB
RabbitMQ 1/2 2GB/4GB
扫描数据(共享) 200吉字节
日志(共享) 10吉字节

根据特定的扫描需求、配置、应用程序需求等,资源需求变化很大。有关其他信息,请参阅配置并发扫描

自动缩放

prepareranalyzerascp-adapter 服务可纵向扩展,以实现并发。缺省情况下,AppScan 360° SAST 启动每个服务的一个实例。检测到并发扫描请求时,将创建 prepareranalyzerascp-adapter 服务的其他实例,以解决负载问题。一旦负载减少,将自动缩放自动缩放的实例。

可以为每个 SAST 服务组件创建的最小和最大实例数如下:

服务 实例(最小值/最大值)
preparer 1/25
analyzer 1/25
ascp-adapter 1/3
workflow-manager 1/1
scan-manager 1/1
gateway 1/1
注: 必须定制集群中的资源配置,以支持所需的并发扫描级别。

存储器

AppScan 360° SAST 将存储用于:
  • 扫描高速缓存
  • 扫描数据
  • 日志

AppScan 360° SAST 需要支持 ReadWriteMany 的存储提供程序。Azure 支持 azurefile 存储提供程序,可在 Azure 中部署 AppScan 360° SAST 时使用此提供程序。

可以使用配置参数定制存储提供程序类名、大小和其他属性。