AppScan 360° Static Analysis 的系统需求

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

AppScan 360° Static Analysis 包包含以下元素:
  • AppScan 360° SAST gateway

    扫描的主要入口点。

  • workflow-manager

    管理扫描进度。

  • scan-manager

    访存扫描工件和详细信息,并收集故障诊断信息。

  • preparer 服务

    准备源代码并构建用于分析的工件。

  • analyzer 服务

    评估 IRX 以识别漏洞。

  • ASCP 适配器

    用于监控扫描状态和进度以及处理结果和日志的 AppScan Central Platform 的接口。

  • RabbitMQ
注: 用于托管容器的系统的数量和配置取决于所需的并发级别(并行扫描的数量),以及要扫描的应用程序的大小。

系统需求和先决条件

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

下载 AppScan 360° SAST

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

集群设置

您可以使用我们的脚本将 AppScan 360° SAST 部署到 Kubernetes 集群。以下先决条件适用于所有集群类型:
  • 用于启用 TLS 的 CA 证书和专用密钥
  • 入口控制器的最新可用版本(例如,NGINX
  • Keda V2.9.4
  • CertManager V1.11.0
  • 用于与集群通信的 kubectl

云部署到 AKS (Azure)

AppScan 360° SAST 容器可部署在由各种云提供商提供的 Kubernetes 环境中,配置如下:

注: 部署脚本当前仅支持 Azure 进行云部署。
注: Kubernetes 和 Azure 是 AppScan 360° Static Analysis 的首选和支持的容器化技术。

Static Analyzer Command Line Utility

Static Analyzer Command Line Utility (SAClientUtil) 用于生成可在 AppScan 360° 中扫描的 IRX。支持将 appscan.sh prepare 命令与 AppScan 360° Static Analysis 一起使用。

Static Analyzer Command Line Utility (SAClientUtil) 出于各种原因会定期更新,包括:
  • 新语言支持
  • 更新的语言支持(例如,与受支持语言相关联的新文件类型)
  • 新功能
  • 修复

资源需求

容器

对于每个静态容器,根据含 RHEL7.9、16GB RAM、24 vCPU 和 512GB 磁盘空间的参考系统,需要以下资源:

服务 实例(最小值/最大值) CPU(最小值/最大值) RAM(最小值/最大值) 磁盘空间(最小值/最大值)
prepare 服务 1/10 4/6 16GB/16GB
analyze 服务 1/10 4/6 32GB/32GB
工作流程管理器 1/1 2/4 6GB/6GB
扫描管理器 1/1 1/2 4GB/4GB
ASCP 适配器 1/3 2/4 6GB/6GB
网关 1/1 1/2 4GB/4GB
扫描数据(共享) 200吉字节
日志(共享) 10吉字节
注: prepareranalyzer 服务的最大 RAM 可以根据单个扫描的内存需求增加。可以根据需要增加扫描数据和日志的磁盘空间。
注: Azure Kubernetes Service (AKS) 将 azurefile 存储作为 PVC 的存储类提供。如果要使用 longhorn 等定制存储类,则为 Pod PVC 和日志 PVC 提供约 250GB 的磁盘空间。

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

自动缩放

prepareranalyzerASCP 适配器 服务可以自动扩展和缩减。通过监控检测并发扫描请求时,可以并行启动每个服务的任何 prepareranalyzerASCP 适配器 服务的 RabbitMQ 消息队列(缺省情况下多达 10 个 Pod),以处理队列中的请求。

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

存储器

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

除非配置为使用其他存储提供程序,否则缺省情况下,在 Azure 中部署时 AppScan 360° SAST 使用 azurefile 存储提供程序。可以使用配置参数定制存储提供程序类名、大小和其他属性。