Fortify SAST扫描排除指定目录与测试文件无效的解决咨询
解决Fortify SAST扫描排除规则不生效的问题
修正排除规则的语法格式
Fortify ScanCentral SAST的scanExclusions参数要求用分号(;)分隔多规则,而非逗号(,),且路径匹配需遵循Ant-style语法。你当前配置用逗号分隔规则,会导致系统将整个字符串识别为单一路径规则,无法正确匹配目标内容。
修改后的YAML配置:
- task: FortifyScanCentralSAST@7 displayName: 'Run SAST Scan' inputs: scanExclusions: '**/fortify-scripts/**;**/*.spec.ts' scanCentralCtrlUrl: '$(sast-controller-url)' scanCentralClientToken: '$(sast-client-token)' sscUrl: '$(ssc-url)'
优化路径匹配的覆盖范围
- 对
fortify-scripts目录添加前后**/,确保匹配项目任意层级下的该目录(比如根目录或子目录中的fortify-scripts) **/*.spec.ts写法正确,可匹配所有层级的.spec.ts测试文件
验证规则生效状态
- 重新运行流水线,查看扫描日志,确认是否出现
Excluding paths: **/fortify-scripts/**, **/*.spec.ts类的加载提示 - 检查最终扫描报告,确认目标目录和文件是否已从检测结果中移除
额外排查方向
若修改后仍不生效,可检查:
- 确认任务版本为
FortifyScanCentralSAST@7,不同版本参数语法可能存在差异 - 核对目录和文件名的大小写(Fortify路径匹配默认区分大小写)
- 确认目标文件确实在扫描的源文件范围内(若文件不在扫描范围内,不会出现“仍检测到问题”的情况,此点可快速排除)
内容的提问来源于stack exchange,提问作者amh_300
相关产品推荐
相关产品推荐

