MetaDefender Jenkins 插件
在向公众发布应用程序之前,检查 Jenkins 构建是否存在恶意软件和秘密。
Jenkins 的MetaDefender 插件由MetaDefender 平台的全部功能(包括 30 多个领先的反病毒引擎、Deep CDR 和Proactive DLP )提供支持,可彻底扫描源代码和工件,查找任何威胁。对任何潜在问题发出警报,并内置自动防故障装置,以防止恶意软件爆发和敏感数据泄漏。
MetaDefender Jenkins 插件集成说明
安装插件
从 Jenkins 网络用户界面
- 转到管理 Jenkins>管理插件
- 单击 "可用"选项卡
- 搜索 MetaDefender> 选择 MetaDefender
- 单击 "无需重启即可安装"。确保选中 "安装完成且无作业运行时重启 Jenkins"复选框。
确认插件已安装:
- 登录 Jenkins
- 转到管理Jenkins>管理插件
- 单击 "已安装"选项卡 > 搜索MetaDefender 插件。
检索MetaDefender Cloud API 密钥
如果您已经在使用MetaDefender Core
在https://portal.opswat.com注册帐户,免费获得API 密钥(请参阅https://metadefender.opswat.com/licensing 网站上的免费用户密钥限制)。您可以升级许可证或购买内部产品,以获得MetaDefender 套件的所有功能和性能。
创建测试项目
在左侧菜单栏中单击 "新建项目",创建测试项目。在"构建"下,创建一个构建步骤(如执行 Windows 批次命令)以生成一个小文件。
将 "使用MetaDefender 扫描 "作为构建步骤或构建后操作或管道添加到构建配置中。单击 "添加构建步骤",选择 "使用MetaDefender 扫描 "。
填写配置详细信息:
- API URL:MetaDefender Core 或MetaDefender Cloud 扫描 URL
- ApiKey:MetaDefender API 密钥
- 规则:定义要扫描的规则MetaDefender
- 私人扫描:仅适用于MetaDefender Cloud的付费用户
- 要扫描的文件夹/文件:要指定要扫描的文件夹或文件,您可以定义多个项目,并用管道"|"分隔(例如,src|resources)。
- 从扫描中排除文件夹/文件:要指定从 "源代码 "中排除的文件夹或文件,您可以定义多个项目,并用管道"|"分隔(例如 .git|.idea)
- 每个文件的扫描超时:为每个文件设置所需的扫描超时
- 如果发现威胁,则将构建标记为 "失败":如果发现任何问题,构建将被标记为 "失败
- 创建日志文件:创建metadefender-plugin.log 以排除故障
你可以通过设置 Jenkins 从 GitHub 上有 EICAR 测试文件的仓库(例如https://github.com/fire1ce/eicar-standard-antivirus-test-files)中提取源代码,开始测试。出于测试目的,请取消选中 "仅显示受阻扫描结果 "复选框,以便查看完整结果。
触发构建并查看扫描结果
设置项目后,运行构建,然后检查控制台输出,查看扫描结果。
对于管道测试,您可以使用下面的示例生成 EICAR 文件并进行扫描。在 "扫描 "阶段,由于发现威胁,构建应该会失败。
注意:脚本使用一个静态函数 hudson.util.Secret.fromString 将字符串转换为密文,因此必须批准该函数或取消选中 "使用 GroovySandbox"。
您还可以在MetaDefender Core 中查看扫描结果: