在多个 Maven 项目上运行 Fortify 扫描
Posted
技术标签:
【中文标题】在多个 Maven 项目上运行 Fortify 扫描【英文标题】:Running Fortify scan over multiple maven projects 【发布时间】:2015-06-30 12:15:16 【问题描述】:我有多个项目由一个父 pom 绑定。
如果我使用 Maven fortify 插件在父 pom 上运行 fortify 扫描,则会生成每个项目的 fpr 文件。我想为所有项目生成一个 fpr 文件。有可能吗?
感谢和问候, 索拉夫
【问题讨论】:
【参考方案1】:您想要做的是聚合构建。尝试为每个模块设置相同的构建 ID,然后将 -Dfortify.sca.toplevel.artifactId 作为父 POM 的 artifactID 传递。这应该为您提供一个 FPR 文件。它应该看起来像:
mvn clean
mvn -Dfortify.sca.buildId=ACMEPortal com.fortify.ps.maven.plugin:sca-maven-plugin:<version>:clean
mvn -Dfortify.sca.buildId=ACMEPortal package com.fortify.ps.maven.plugin:sca-maven-plugin:<version>:translate
mvn -Dfortify.sca.Xmx=800M -Dfortify.sca.buildId=ACMEPortal -Dfortify.sca.toplevel.artifactId=AcmePortal com.fortify.ps.maven.plugin:sca-maven-plugin:<version>:scan
【讨论】:
嗨 Eric...再次感谢您的回复...我在哪里设置构建 ID? 以 Eric 为例:-Dfortify.sca.buildId=ACMEPortal
@BranLakes 感谢您的回复... BuilId = "AcmePortal" 是父 pom 的工件 ID 吗?
这对我来说曾经是这样工作的——但自从更新到强化 4.20 后,似乎 toplevelartifactid 已经停止工作以上是关于在多个 Maven 项目上运行 Fortify 扫描的主要内容,如果未能解决你的问题,请参考以下文章
我可以在 .jar 文件而不是 .java 上运行 fortify 吗?
如何在一个仪表板上显示多个项目的OWASP的Dependency Check Maven结果