云客户?
免费开始>
在MyJFrog中升级>
云的新功能>





概述

您可以在组织的CI/CD管道中无缝地集成JFrog Xray安全性和遵从性扫描,以确保在流程的早期停止包含漏洞的构建作业。作为完全自动化过程的一部分,Xray接收有关CI服务器刚刚运行的构建的信息,然后对构建运行深度递归扫描,直至最深层的依赖关系,如果发现任何漏洞,Xray将向调用CI服务器返回指示。

失败包含构建工件或带有漏洞的依赖项的构建作业是防止任何受感染的构建到达生产系统的有效方法。有一些组织策略强制开发人员扫描他们运行的每个构建,并在发现受感染的工件时立即使其失败。然而,人们发现这种操作模式会抑制开发者的创造力并阻碍他们的生产力,开发者通常会找到绕过这种限制的方法。更好的解决方案是,一旦合并了几个开发人员的代码,就定期运行这种扫描。例如,在组织的CI服务器运行的夜间构建期间。

页面内容


x射线如何扫描你的构建?

在这个过程中有三个参与者:

  • 您的CI构建
    目前支持Jenkins, Azure DevOps, Bamboo, TeamCity和JFrog CLI。
    CI构建通过JFrog Artifactory向Xray发送一个请求,以扫描构建。如果扫描检测到漏洞,则CI构建可以采取适当的操作。
  • JFrog Artifactory
    JFrog Artifactory充当CI服务器和Xray之间的中介。它所做的不过是在两者之间传递信息。
  • JFrog x光
    根据要求,如果x射线已经定义了手表行动要使构建作业失败,它将扫描构建,并响应一条消息,如果在构建工件或其依赖项之一中检测到漏洞,则构建作业应该失败。

下面的工作流程显示了Xray如何扫描您的构建。

  1. CI构建运行。
    假设构建成功,CI构建将构建信息发布到Artifactory。
  2. Xray会自动扫描您的新构建工件和依赖项。
  3. CI构建将请求传递给Artifactory以扫描构建。
  4. Artifactory传递一个请求,通过x射线扫描构建scanBuildREST API端点。
  5. x射线根据定义的Watch扫描构建构建任务失败行动。

    多块手表还是没有手表?

    您可以定义多个带有失败构建作业动作的watch,每个watch都有自己的标准(即Artifact Filters和/或Issue Filters),这些标准应该触发警报。每次扫描构建时,都会应用所有这些监视。

    如果x射线接收到ascanBuild请求,就有没有使用失败构建作业动作定义的表,Xray将始终响应一个指示,指示构建作业失败,即使在构建工件或它们的依赖项中没有发现漏洞。

  6. 如果构建工件或依赖项满足Watch中定义的条件(过滤器),Xray将触发警报并…
  7. x射线响应scanBuild指示生成作业应该失败的请求。

    所有警报在一个响应中

    响应包括所有包含失败构建作业操作的watch生成的所有警报的详细信息。

  8. Artifactory将响应传回CI Server。
  9. CI服务器未能完成构建作业。

设置x射线CI集成

配置x光

  1. 安装x光
  2. 在资源上建立索引2022世界杯阿根廷预选赛赛程
  3. 要使Xray根据CI服务器的请求扫描构建,您需要配置一个使用正确的过滤器指定哪些工件和漏洞应该触发警报,并为该监视设置失败构建作业操作。

配置CI服务器

Xray CI/CD集成支持Jenkins、Azure DevOps、Bamboo和JFrog CLI。

詹金斯

配置构建作业请求扫描,用Jenkins Artifactory插件(v2.9.0及更高版本),您需要创建一个scanConfig实例和,并将其传递给xrayScan方法。

Azure DevOps

要扫描构建工件以查找Azure DevOps中的漏洞,需要添加人工x射线扫描任务后的任务Artifactory发布BuildInfo的任务。

竹子

扫描构建工件对于漏洞,使用竹工艺品插件,你需要加上Artifactoryx光扫描完成你的计划该任务应该遵循前一个任务,该任务将构建信息发布到Artifactory。

TeamCity

扫描构建工件和依赖项的漏洞TeamCity人工插件,您需要启用构建时的x射线扫描失败构建选项,每个构建配置。

JFrog CLI

要使用JFrog CLI扫描构建工件中的漏洞,您需要使用Jfrog rt扫描-构建命令。

配置Artifactory

虽然Artifactory在此集成中不起主动作用,也不需要显式配置,但Artifactory在CI服务器和JFrog Xray之间传递信息时确实起被动作用。

中支持此特性v4.16版本的工件及以上。


管理扫描构建

Xray的构建集成允许您管理构建作业,并在构建中发现带有漏洞的构建工件或依赖项时,使用适当的操作对它们进行配置。虽然默认操作(在Jenkins中)是简单地停止构建,但实际上您可以配置您的管道来做其他事情,例如发送电子邮件通知,甚至运行不同的构建作业。


观看视频

观看此屏幕视频,了解如何通过使用JFrog Xray扫描每次构建的结果以查找安全漏洞、许可遵从性问题等,从而获得最佳的两个世界—开发人员的生产力和安全性。

  • 没有标签
版权所有©2022 JFrog Ltd.