@codacy/tools-checkov-3

中文文档
0.28.0发布于 2026/11/09MITTypeScriptCommonJS近 30 天下载 1.2万

Chichov适配器——CLI-mode IaC安全扫描仪

中文使用文档
文档目录6 节
  1. 目录
  2. 概览
  3. 更新图案
  4. 更新 Checkov 版本
  5. 发展
  6. 维护者的注释

校对:soup

目录


概览

使用 齐考夫 二进制. 扫描Terraform, Cloud Formation, Kubernetes, Dockerfile, 以及许多其他IaC框架的安全配置错误. 使用带有 Python/pip 安装的 CLI 执行策略进入孤立的虚拟环境.

财产数值
工具标识Checkov
编码 UUID13af9d89-1ce5-4fec-a168-765c3e7b26b3
战略国 际
语文JSON、YAML、Terraform、多克文件
二进制checkov (Python软件包)
文件图案**/*.tf, (中文(简体) ), **/*.yaml, (中文(简体) ), **/*.yml, (中文(简体) ), **/*.json, (中文(简体) ), **/Dockerfile
图案计数~1 359个
模式标识格式Checkov_{check_id} (例如:. Checkov_CKV_AWS_41(中文(简体) )

更新图案

# Re-fetch pattern metadata from the Codacy API
pnpm prefetch

# Commit the result
git add src/patterns.json

更新 Checkov 版本

  1. 更新 preferredVersion 内 src/adapter.ts
  2. 更新 PIP_PACKAGE 常数在 src/adapter.ts (例如:. checkov==3.2.510(中文(简体) )
  3. 运行 pnpm prefetch 以刷新图案( 新版本可能添加检查)
  4. 运行 pnpm test 以验证兼容性
  5. 考虑创建新的软件包( E)checkov-4/),如果主要版本更改

发展

# Install checkov locally (requires Python 3.9+)
pip install checkov==3.3.19

# Build with tsup
pnpm build

# Run tests (skips binary-dependent tests if checkov is not installed)
pnpm test

维护者的注释

  • 大管道安装: Checkov 有~200个中转依赖性(pydantic,boto3 stubs,networkx等). 第一次安装到阴道需要几分钟时间. 随后运行使用缓存的 venv.

  • 每个工具的阴道隔离:适配器安装 Checkov 进入 ~/.codacy/runtimes/Checkov/venv/ 以避免依赖性与其他基于 Python 的工具相冲突.

  • 多框架 JSON 输出: Checkov可以发射出单个JSON对象或一系列对象(每个框架一个). 适配器在解析前将两者都正常化为数组.

  • 路径正常化数字 : repo_file_path 从Chitchov总是有领先 / 必须被剥去.

  • 无列信息: Checkov 不提供栏号. 所有问题都使用 column: 1。 。 。 .

  • 退出代码: 退出代码0 = 无问题, 1 = 发现问题(正常), > 1 = 真错误.

  • 集装箱模式网络封堵: 在容器模式下(ctx.runner === "container"),适配器设置代理 env vars 和 RENDER_EDGES_DUPLICATE_ITER_COUNT=50 阻止Bridgecrew API的呼叫和调谐性能.

  • 模式过滤: 用途 --check CKV_xxx,CKV_yyy,... 只运行特定检查。 这个 Checkov_ 前缀从图案ID被剥去,以获取原始的检查ID.

  • 配置文件: 寻找 .checkov.yaml 或者说 .checkov.yml。当本地配置活动时,通过 --config-file <path>。 。 。 .

  • 分析错误: Checkov报告 parsing_errors 显示为 AnalysisError 对象为 kind: "ParsingError"。 。 。 .

  • 预设绘图src/pattern-mappings.json(中文(简体) )1,360个模式中的1,280个门在一个检测到的IaC框架上,所以 init --auto 无法在没有基础设施的回购中启用 AWS 资源政策 。 测量效应:仅具有 package.json 从1 225个启用的Chitchov模式到80个模式.

    门是 每IaC框架,而不是每云,因为云资源可以被宣布为几种方式——同一个桶是一个 aws_s3_bucket 在Terraform,一个 AWS::S3::Bucket 在云层和一 resources: 在无服务器下块. filterAutoPatterns 当 任意 它的密钥被检测到,因此同一前缀被列在几个密钥下,以表示"AWS资源,无论它们被宣布". 之前的一次修订让所有~1,091 云端提供商的检查普遍化 完全是因为让它们打开 .tf 单凭你一个人 就会放弃每一次云量检查 一次只有云量的回波.

    • "lang:Terraform" 地图 CKV_TF_ 加上每个提供云源的家庭CKV_AWS_, (中文(简体) ), CKV_AZURE_, (中文(简体) ), CKV_GCP_,和十更小的云). 不需要文件信号 : .tf 实值 页:1 Terraform 语言,所以 lang:Terraform 已经表示"这回波有Terraform".
    • cloudformation 财务报告和审定财务报表 serverless-framework 也索赔 CKV_AWS_编号 :CKV2_AWS_· ; bicep 也索赔 CKV_AZURE_编号 :CKV2_AZURE_。通过文件信号检测(samconfig.*,一个根 template.yaml页:1 cloudformation/ 目录, serverless.yml, (中文(简体) ), *.bicep) (中文(简体) ).
    • kubernetes 财务报告和审定财务报表 helm 两项索赔 CKV_K8S_编号 :CKV2_K8S_编号 :CKV_ARGO_ ——图表的模板可以显示,所以两者都是证据. 从 kustomization.yaml 编号 : Chart.yaml。 。 。 .
    • ansible 索赔 CKV_ANSIBLE_编号 :CKV2_ANSIBLE_从 ansible.cfg 或 roles/<name>/tasks/main.yml 设置.
    • 仍然普遍(80种模式),每个模式都有明确的理由:
      • CKV_SECRET_ (18个)和 CKV_BCW_ (1)通过设计——秘密扫描决不能被任何框架门所压制.
      • CKV_OPENAPI_ (21) – OpenAPI/AsyncAPI 文档用它自己识别自身 openapi:编号 :swagger: 键,一个只看到路径的信号看不到。 需要内容探测器.
      • VCS 治理家庭 CKV_GITHUB_ (26个), CKV_GIT_ (7), CKV_GLB_ (4), (中文(简体) ), CKV_GITLAB_, (中文(简体) ), CKV_BITBUCKET_, (中文(简体) ), CKV2_ADO_ (各1个). 这些是 未解决,未推迟: 其标题读取为平台/ API 设置( Checkov's github_configuration 框架,它读取API数据,不能在文件系统扫描上发火,而此文件的早期读取记录为通过每个平台管理的治理资源 地形提供者 ——在这种情况下,属于 lang:Terraform。两种读取意味着相反的修补(prune v. s. gate),所以在对照Checkov自己的框架声明检查之前,它们不会受到影响.
    • 已知缺口 : 裸露的库伯尼特k8s/deployment.yaml)或赤色的Cloud Formation模板仍未被检测出——只有周围的常规贝壳才是. 双方在内容中都声明自己,所以结束这个过程需要一个有界限的内容探测器(papiVersion:, (中文(简体) ), AWSTemplateFormatVersion页:1.
    • 已知缺口( 上游 ) : 大多数图案携带 languages: ["JSON", "YAML", "Terraform"],这是 工具级倒置 Codacy的API返回一个没有平面语言的图案——而不是对支票的要求. 它过于宣示(JSON是为什么几乎所有地方都选择了Chitchov)和宣示不足(只有6个) CKV_DOCKER_ 检查清单 Dockerfile,因此22被语言过滤器在 Dockerfile- only repo 中丢出. 持久固定在云工具定义中;见 todo-checkov-languages.md。 。 。 .

版本与发布记录

@codacy/tools-checkov-3 共发布 36 个版本,首次发布于 2026/03/24;过去 12 个月发布了 36 个版本。

版本发布日期距今
0.28.0latest2026/11/09今天
0.27.12026/11/054 天前
0.27.02026/11/036 天前
0.26.02026/10/3010 天前
0.25.02026/10/1921 天前
0.24.02026/09/251 个月前

关于 @codacy/tools-checkov-3 的常见问题

@codacy/tools-checkov-3 是什么?

Chichov适配器——CLI-mode IaC安全扫描仪

如何安装 @codacy/tools-checkov-3?

在项目目录运行 npm install @codacy/tools-checkov-3,或使用 pnpm add / yarn add / bun add。

@codacy/tools-checkov-3 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@codacy/tools-checkov-3 支持 ESM 还是 CommonJS?

以 CommonJS 形式发布,可以直接 require();在 ES Module 项目中也可以用 import 引入(Node.js 会把 module.exports 作为默认导出)。

@codacy/tools-checkov-3 需要什么版本的 Node.js?

package.json 的 engines 字段要求 Node.js >=20.0.0。版本不符时 npm 默认只给出警告,开启 engine-strict 后会拒绝安装。

@codacy/tools-checkov-3 可以商用吗?

@codacy/tools-checkov-3 使用 MIT 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。以上为概括,不构成法律意见,请以许可原文为准。

@codacy/tools-checkov-3 的下载量有多少?

根据 npm 官方下载统计,@codacy/tools-checkov-3 在 2026/10/10 – 2026/11/08 这 30 天内被下载 11,960 次,日均约 399 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@codacy/tools-checkov-3 还在维护吗?

最新版本 0.28.0 发布于 2026/11/09(今天);至今共发布 36 个版本,其中过去 12 个月发布了 36 个;首次发布于 2026/03/24。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。