想跳过下载步骤快速使用OpenSCA检测代码风险?想实现多个项目并发扫描?

在Docker Image中使用OpenSCA即可轻松实现。一起来look look

目的

  • 方便用户使用最新版本的 OpenSCA-cli

  • 保证环境的一致性,消除不同操作系统对结果的影响

  • 可以方便在本地维护不同版本的 OpenSCA-cli

  • 方便在特定情况下并发扫描的需求

使用方法

命令行传参方式使用

检测当前目录的依赖关系

docker run -ti --rm -v $(PWD):/src opensca/opensca-cli

使用云端数据库检测漏洞

docker run -ti --rm -v $(PWD):/src opensca/opensca-cli -token xxxx

使用本地数据库检测漏洞

docker run -ti --rm -v $(PWD):/src -v /localDB:/data opensca/opensca-cli -db /data/db.json

检查依赖关系并生成 SBOM

docker run -ti --rm -v $(PWD):/src opensca/opensca-cli -out /src/output.spdx

配置文件方式使用

OpenSCA-cli Docker 镜像默认从当前 /src 目录查找 config.json 配置文件,因此若希望对每一个项目进行单独配置,只需在不同项目的根目录维护配置文件即可。

例如如下目录结构:

.
├── LICENSE
├── README.md
├── config.json
├── pom.xml
├── src
│ ├── config
│ └── main
├── testfiles
│ └── ...
└── tools
└── ...

config.json 内容

{
"path": "/src",
"out": "/src/output.spdx",
"vuln": true,
"dedup": true,
"progress": true,
"url": "https://opensca.xmirror.cn",
"token": "xxxx-xxxx-xxxx-xxxx", "origin": {
"": {
"dsn": ""
}
}, "maven": [
{
"repo": "",
"user": "",
"password": ""
}
]
}

完成配置后,后续扫描无需修改命令,只需修改配置文件即可,方便在 CI/CD 的 Pipeline 中使用:

docker run -ti --rm -v $(PWD):/src opensca/opensca-cli

升级 OpenSCA-cli 镜像

可在引用时追加版本号,例如

docker run -ti --rm -v $(PWD):/src opensca/opensca-cli:v1.0.13

或者使用 pull 命令获取最新镜像

docker pull opensca/opensca-cli:latestdocker run -ti --rm -v $(PWD):/src opensca/opensca-cli

 

开源安全共建

感谢每一位开源社区成员对OpenSCA的支持和贡献。OpenSCA的代码会在GitHub和Gitee持续迭代,欢迎Star和Fork,也欢迎向我们提交ISSUE和PR,参与我们的开源安全共建计划,与社区成员共同建设充满可能性的开源解决方案。

技术文档 | 免下载、0配置、多任务并发,在Docker Image中使用OpenSCA的更多相关文章

  1. 【JEECG技术文档】表单配置-树形表单

    表单配置支持树型表单了,具体效果如下图: 配置说明: 1.是否树:选择是. 2.树形表单父Id:表的自关联外键. 3.树形表单列表:显示树形图标的列,如上图中为[组织机构名称]. 4.默认值:最外层数 ...

  2. Docker最全教程之使用Node.js搭建团队技术文档站(二十三)

    前言 各种编程语言均有其优势和生态,有兴趣的朋友完全可以涉猎多门语言.在平常的工作之中,也可以尝试选择相对适合的编程语言来完成相关的工作. 在团队技术文档站搭建这块,笔者尝试了许多框架,最终还是选择了 ...

  3. Kafka 技术文档

    Kafka 技术文档   目录 1 Kafka创建背景 2 Kafka简介 3 Kafka好处 3.1 解耦 3.2 冗余 3.3 扩展性 3.4 灵活性 & 峰值处理能力 3.5 可恢复性 ...

  4. RabbitMq 技术文档

    RabbitMq 技术文档 目录 1 AMQP简介 2 AMQP的实现 3 RabbitMQ简介 3.1 概念说明 3.2 消息队列的使用过程 3.3 RabbitMQ的特性 4 RabbitMQ使用 ...

  5. [转]unity3d 脚本参考-技术文档

    unity3d 脚本参考-技术文档 核心提示:一.脚本概览这是一个关于Unity内部脚本如何工作的简单概览.Unity内部的脚本,是通过附加自定义脚本对象到游戏物体组成的.在脚本对象内部不同志的函数被 ...

  6. 《Java开发学习大纲文档》V7.0

    <Java开发学习大纲文档>V7.0简介: 本文档是根据企业开发所需要掌握的知识点大纲进行总结汇编,是Java开发工程师必备知识体系,系统化学习针对性非常强,逻辑分析能力非常清晰;技术方面 ...

  7. 使用Jupyter Notebook编写技术文档

    1.jupyter Notebook的组成 这里它的组件及其工程构成,帮助大家更好的用好jupyter Notebook 组件 Jupyter Notebook结合了三个组件: 笔记本Web应用程序: ...

  8. d3js技术文档

      D3js技术文档 概述 D3 allows you to bind arbitrary data to a Document Object Model (DOM), and then apply ...

  9. (转载)学校搭建使用nginx同时编译rtmp-module进行直播的技术文档

    原文地址:学校搭建使用 nginx 同时编译 rtmp-module 进行直播的技术文档 转载自我的大佬同学 MetalkgLZH.学校有几次需要全校观看网络直播的情况,但是学校的带宽不允许所有的班一 ...

  10. 使用ReadtheDocs托管技术文档

    ReadtheDocs Read the Docs非常适合写软件文档以及编写一些教程.电子书之类.对于一些一两篇文章就能写清楚的可以记笔记或写博客, 但是如果要写成一个系列的,不如写成一本书的形式,更 ...

随机推荐

  1. 【封装】Splay

    注意确保操作合法性,否则可能陷入死循环 以点权作为排序依据 struct Splay{ #define ls p[u].son[0] #define rs p[u].son[1] #define ma ...

  2. 开发环境搭建:CubeMX、Keil MDK-ARM、仿真器驱动程序

    来源:成电<微机原理与嵌入式系统>漆强 第三章 STM32微控制器开发环境的搭建 一.STM32 CubeMX的安装 1.STM32 CubeMX的下载和安装 先安装java环境安装 下载 ...

  3. 基于.NET Core + Quartz.NET+ Vue + IView开箱即用的定时任务UI

    前言 定时任务调度应该是平时业务开发中比较常见的需求,比如说微信文章定时发布.定时更新某一个业务状态.定时删除一些冗余数据等等.今天给大家推荐一个基于.NET Core + Quartz.NET + ...

  4. springboot——入门案例

    真简单啊 springboot 学了入门案例,有感而发 首先是一个自带的配置文件: package com.example.springboot_01; import org.springframew ...

  5. Mybatis-Flex核心功能之@Table

    1.能干啥? @Table 主要是用于给 Entity 实体类添加标识,用于描述 实体类 和 数据库表 的关系,以及对实体类进行的一些 功能辅助. 例如: 数据库有一张tb_member的会员表 这时 ...

  6. 24、Go语言中的OOP思想

    1.是什么? OOP:面向对象 Go语言的解构体嵌套 1.模拟集成性:is - a type A struct { field } type B struct { A // 匿名字段 } 这种方式就会 ...

  7. 【scikit-learn基础】--『预处理』之 正则化

    数据的预处理是数据分析,或者机器学习训练前的重要步骤.通过数据预处理,可以 提高数据质量,处理数据的缺失值.异常值和重复值等问题,增加数据的准确性和可靠性 整合不同数据,数据的来源和结构可能多种多样, ...

  8. elasticsearch oom问题分析

    背景 线上发现elasticsearch集群状态red,并且有个es节点jvm内存使用不断升高,直到gc后依然内存不够使用,服务停止.查看日志,elasticsearch出现OOM报错. [2023- ...

  9. 火爆全网的Log4j 漏洞复现GetShell

    目录: 一.搭建环境 1. 首先拉一个docker镜像 2. 然后启动环境 二.获取shell 首先,试验一下DNSLog 1. 准备JNDI注入工具 下载 进入目录打包成jar包 2. 利用 生成p ...

  10. Dest0g3 520迎新赛-CRYPTO MISC 复现

    CRYPTO babyRSA 题目 from Crypto.Util.number import bytes_to_long, getPrime from gmpy2 import next_prim ...