技术文档 | 将 OpenSCA 接入 GitHub Action,从软件供应链入口控制风险面

本文介绍了如何在GitHubActions中集成XmirrorSecurity/opensca-scan-action,以实现代码扫描、漏洞检测和结果同步到OpenSCA云服务。还提供了配置示例和常见问题解决方案,帮助开发者便捷管理代码安全流程。

继 Jenkins 和 Gitlab CI 之后,GitHub Action 的集成也安排上啦~

若您解锁了其他 OpenSCA 的用法,也欢迎向项目组来稿,将经验分享给社区的小伙伴们~

参数说明

参数是否必须描述
tokenOpenSCA 云漏洞库服务 token,可在 OpenSCA 官网获得
proj用于同步检测结果至 OpenSCA SaaS 指定项目
need-artifact" 是否上传日志 / 结果文件至 workflow run(默认:否)
out指定上传的结果文件格式(文件间使用 “,” 分隔;仅 outputs 目录下的结果文件会被上传)

使用样例

workflow 示例

on:
  push:
    branches:
        - master
        - main
  pull_request:
    branches:
        - master
        - main

jobs:
  opensca-scan:
    runs-on: ubuntu-latest
    name: OpenSCA Scan
    steps:
      - name: Checkout your code
        uses: actions/checkout@v4
      - name: Run OpenSCA Scan
        uses: XmirrorSecurity/opensca-scan-action@v1
        with:
          token: ${{ secrets.OPENSCA_TOKEN }}

* 需要先基于 OpenSCA 云漏洞库服务 token 创建秘钥,详细信息请见 https://docs.github.com/en/actions/security-guides/using-secrets-in-github-actions#about-secrets

扫描结束后,可在仓库的 Security/Code scanning 里找到结果

也可直接跳转至 OpenSCA SaaS 查看更多详细信息;跳转链接可在 Action 日志中找到

更多场景

同步检测结果至 OpenSCA SaaS 指定项目

使用 proj 参数将检测任务绑定至指定项目下;ProjectID 可在 SaaS 平台获取

- name: Run OpenSCA Scan
  uses: XmirrorSecurity/opensca-scan-action@v1
  with:
    token: ${{ secrets.OPENSCA_TOKEN }}
    proj: ${{ secrets.OPENSCA_PROJECT_ID }}

保留日志用于问题排查

- name: Run OpenSCA Scan
  uses: XmirrorSecurity/opensca-scan-action@v1
  with:
    token: ${{ secrets.OPENSCA_TOKEN }}
    need-artifact: "true"

上传日志及检测报告至 workflow run

- name: Run OpenSCA Scan
  uses: XmirrorSecurity/opensca-scan-action@v1
  with:
    token: ${{ secrets.OPENSCA_TOKEN }}
    out: "outputs/result.json,outputs/result.html"
    need-artifact: "true"

* 仅 outputs 目录下的结果文件会被上传

常见问题

Permission denied

若遇 permission denied 报错,可前往 Settings -> Actions -> General,在 Workflow permissions 里选中 "Read and write permissions" 并保存

找不到 artifact?

在 workflow summary 页面底部区域,截图示意如下:

如有其他问题或反馈,欢迎向我们提交 ISSUE~

https://github.com/XmirrorSecurity/opensca-scan-action

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值