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 集群中预配置以下附加组件服务:
- 入口控制器(例如 NGINX)
- Keda
- CertManager
- 用于与 Kubernetes 集群通信的 kubectl。
资源需求
容器
对于每个静态容器,每个 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吉字节 |
根据特定的扫描需求、配置、应用程序需求等,资源需求变化很大。有关其他信息,请参阅配置并发扫描。
自动缩放
preparer
、analyzer
和 ascp-adapter
服务可纵向扩展,以实现并发。缺省情况下,AppScan 360° SAST 启动每个服务的一个实例。检测到并发扫描请求时,将创建 preparer
、analyzer
或 ascp-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 时使用此提供程序。
可以使用配置参数定制存储提供程序类名、大小和其他属性。