Fortify Audit WorkBench扫描dtsx包显示0 LOC问题求助
解决Fortify扫描SSIS包(.dtsx/.xml)显示0 LOC的问题
问题原因
Fortify默认规则集未正确识别SSIS包的XML结构,即便将.dtsx改为.xml扩展名,也可能被判定为普通XML而非可统计LOC的代码文件,导致LOC统计为0。
解决方案
1. 配置文件类型映射
修改Fortify配置,让其将.dtsx识别为XML类型:
- 找到Fortify安装目录下的
Core/config/fortify.properties文件 - 添加或更新以下配置项:
com.fortify.sca.fileextensions.xml=.xml,.dtsx - 保存后重启Audit WorkBench,重新扫描项目
2. 开启XML文件的LOC统计
在Audit WorkBench中调整扫描设置:
- 进入Options > Settings > Source Code Analysis
- 在File Types to Analyze中勾选
XML类型;若没有该选项,手动添加.dtsx和.xml到自定义文件类型列表
3. 命令行扫描指定文件类型
若GUI扫描无效,使用Fortify SCA命令行工具强制指定文件类型:
sourceanalyzer -b <项目名> -scan -f <结果文件.fpr> -filetypes xml <你的.dtsx文件路径>
或直接指定扫描目标文件:
sourceanalyzer -b MySSISProject -scan -f MySSISResults.fpr "C:/SSISPackages/*.dtsx"
4. 验证文件有效性
确认.dtsx文件是完整有效的XML:
- 用XML编辑器打开文件,检查是否存在语法错误
- 确保文件头部包含正确的XML声明(
<?xml version="1.0"?>)
额外提示
若以上方法均无效,可尝试自定义Fortify规则集,添加针对SSIS包XML结构的LOC统计规则,具体可参考Fortify官方规则定制说明。
内容的提问来源于stack exchange,提问作者AAN
相关产品推荐
相关产品推荐

