Veinmind Jenkins 插件推出了v1.0.0版本,可以顺滑的集成进CI中,对容器镜像的构建步骤进行扫描,而无需修改任何代码。
在CI集成各种安全能力的过程中,最为痛苦的便是面对成千上百的仓库和分支,需要手动修改各种配置文件来加入安全扫描的步骤;通常情况下,在Jenkins CI过程内想要引入容器安全检测,需要手动的去修改Jenkinsfile
文件来插入扫描步骤。
如果您是几百个项目的运维人员,在DevSecOps的运营过程中,如何在各个多个项目的多个分支的Jenkinsfile内的某处插入安全扫描能力?
Veinmind Jenkins 插件可以帮你解决上述场景的问题。在 Jenkins安装Veinmind 插件,开启自动扫描选项,即可无需插入任何步骤,自动监听docker build行为,扫描build生成的镜像,同时支持扫描报表以及任务阻断等功能。
1.Veinmind Jenkins 的特性
- 支持自动扫描模式,无需修改Jenkinsfile文件或BuildStep,自动识别
docker build
的动作,触发扫描任务。 - 支持手动模式,可以手动增加Build Step/Pipeline Step来手动触发扫描。
- 简便安装,一次安装,永久使用。
- 使用简单,无需记住复杂的参数,鼠标配置即可。
- 支持阻断功能。
- 提供数据统计和详情页面。
2.Veinmind Jenkins 的使用
Step.1 下载并安装Veinmind Jenkins 插件
在 github 下载最新的 veinmind scanner.hpi 文件
https://github.com/chaitin/veinmind-jenkins/releases
安装进Jnekins并重新启动。
Step.2 在全局配置设置自动扫描的策略
安装好插件后,在 Manage Jenkins -> Configure System
找到Veinmind Scanner Options
勾选上自动扫描的选项,然后选择Agent:
选用开源的 veinmind-runner
, 建议使用最新的版本号。
然后点击保存即可。
Step.3 开始一次构建
任意找一个Step存在构建的Project,点击立即构建触发流程。
Step.4 查看扫描结果
当任务结束时,可以在侧边栏发现Veinmind Scanner页面,可以查看本次构建内扫描的结果和详情。
3. Veinmind Jenkins 的更多用法
Veinmind Jenkins 插件除了自动扫描支持之外,同样也支持手动指定扫描,来满足多样化的需求。
Pipeline Porject 手动模式
在Jenkinsfile
内插入Veinmind scanner的扫描代码,即可人工指定一次扫描:
veinmindScanner block: true, image: 'YOOUR_IMAGE_REF', scanConfig: [$class: 'RunnerConfig', agentVersion: 'V1.5.0', scanArgs: '-v /var/run/docker.sock:/var/run/docker.sock', workSpace: '']
如果不熟悉Pipeline语法或参数的意义,可以在 pipeline-syntax 流水线语法处,选择veinmindScanner,根据配置项生成对应的Pipeline语句。
FreeStyle Project 手动模式
在构建的步骤内,选择增加构建步骤,可以增添一次veinmind scanner扫描