# @codacy/tools-checkov-3 中文文档

规范地址：https://npmcn.com/package/%40codacy/tools-checkov-3/

版本：0\.28\.0
npm 元数据更新时间：2026-11-09T13:46:37.918Z
中文译文更新时间：2026-11-10T05:34:50.807Z
软件包许可：MIT

本文由上游 README 翻译，可能存在偏差，请结合原文核对 API、命令与配置。版权与许可归原作者所有。

原始 npm 页面：https://www.npmjs.com/package/%40codacy/tools-checkov-3
原文对照：https://npmcn.com/package/%40codacy/tools-checkov-3/?lang=original
项目主页：https://github.com/codacy/analysis-cli
源码仓库：https://github.com/codacy/analysis-cli

## 关键信息（来自 npm 元数据）

- 包体积（解压后）：402 kB，7 个文件
- 模块格式：CommonJS
- TypeScript 类型：包内自带
- Node.js 要求：\>=20\.0\.0
- 运行依赖：1 个
- 首次发布：2026-03-24T13:15:53.432Z
- 最新版本发布：2026-11-09T13:46:37.705Z
- 近 30 天下载量：11960（2026-10-10 至 2026-11-08，npm 官方下载统计）
- 已发布版本数：36（近 12 个月 36 个）

## 中文简介

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

## 安装

```sh
npm install @codacy/tools-checkov-3
```

也可以使用：`pnpm add @codacy/tools-checkov-3`、`yarn add @codacy/tools-checkov-3`、`bun add @codacy/tools-checkov-3`

## README

# 校对:soup

## 目录

-   [概览](https://npmcn.com/package/%40codacy/tools-checkov-3/#readme-overview)
-   [更新图案](https://npmcn.com/package/%40codacy/tools-checkov-3/#readme-updating-patterns)
-   [更新 Checkov 版本](https://npmcn.com/package/%40codacy/tools-checkov-3/#readme-updating-the-checkov-version)
-   [发展](https://npmcn.com/package/%40codacy/tools-checkov-3/#readme-development)
-   [维护者的注释](https://npmcn.com/package/%40codacy/tools-checkov-3/#readme-notes-for-maintainers)

* * *

## 概览

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

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

## 更新图案

```bash
# 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/`),如果主要版本更改

## 发展

```bash
# 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模板仍未被检测出——只有周围的常规贝壳才是. 双方在内容中都声明自己,所以结束这个过程需要一个有界限的内容探测器(p`apiVersion:`, (中文(简体) ), `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 是什么？

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 和提交记录判断。

