如果强化扫描报告错误,是否可能使maven构建失败

时间:2016-12-15 00:16:03

标签: java eclipse maven build fortify

我有一个Maven项目。我为此运行了Fortify扫描并成功生成了pdf报告。我现在正在尝试整合它,作为Maven构建的一部分,并假设添加适当的罐作为依赖应该做的工作。

我的问题是,

  1. 是否可能导致构建失败,即使所有代码都没问题, 但Fortify报告会产生错误吗?
  2. 如果是,我如何指定我希望构建仅在说, 高和严重错误,而不是低和中。

2 个答案:

答案 0 :(得分:0)

您可以使用Maven Enforcer强制在未生成报告时构建失败,或者您可以使用其他Enforcer rules

例如,有些事情,您可以在想要失败时设置phaseRules

 <plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-enforcer-plugin</artifactId>
    <executions>
      <execution>
        <id>enforce-fortify-reports</id>
        <phase>verify</phase>
        <goals>
          <goal>enforce-once</goal>
        </goals>
        <configuration>
          <rules>
           <requireFilesExist>
                  <files>
                   <file>${project.build.outputDirectory}/report.frp</file>
                  </files>
                </requireFilesExist>
          </rules>
          <fail>true</fail>
        </configuration>
      </execution>
    </executions>
  </plugin>

答案 1 :(得分:0)

(不是完整的解决方案,而是提示)

您可以使用FPRUtility(SCA的一部分)来检查错误和问题数量,然后您可以使用Maven或Ant来解析结果并使构建失败。

# fprutility -information -project project.fpr -errors
[10002] Unable to parse T-SQL at tables.sql:612:3.
[10002] Unable to parse T-SQL at update.sql:72:27.

# fprutility -information -project project.fpr -search -query "[fortify priority order]:high OR [fortify priority order]:critical"
565 issues of 796 matched search query.

修改

注意:如果您使用SSC审核问题,则应首先上传生成的.fpr文件,然后检查合并的结果以排除已抑制的问题,例如。