Skip to content
KitploitKITPLOIT
ИнструментыЭксплойтыБлог
Log in
Отправить
ИнструментыЭксплойтыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

ЛентыКонтактыКонфиденциальность© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
checkov — Инструмент статического анализа для инфраструктуры как код, который обнаруживает облачные неверные конфигурации, уязвимости и секреты в Terraform, Kubernetes, CloudFormation и образах контейнеров во время сборки. | Kitploit
Инструменты/GitHubGitHub/bridgecrewio/checkov
Безопасность облачной инфраструктурыСтатический анализСканеры уязвимостейБезопасность контейнеровСтатический анализ кода (SAST)Анализ уязвимостейАнализ КодаБессерверная безопасностьАудит конфигурацииБезопасность облачных средDevSecOps
8.9k1.4k1216 дней назадПроверено Kitploit
Обнаружение Секретов
Безопасность Цепочки Поставок
Неправильная Конфигурация
Безопасность Баз Данных
Топ в Безопасность облачной инфраструктуры №4
Топ в Безопасность облачных сред №4
Топ в Анализ Кода №18
Топ в Аудит конфигурации №5
Топ в Безопасность Баз Данных №13
Топ в DevSecOps №5
Топ в Неправильная Конфигурация №5
Топ в Обнаружение Секретов №16
Топ в Бессерверная безопасность №6
Топ в Статический анализ кода (SAST) №15
Топ в Анализ уязвимостей №17
Топ в Сканеры уязвимостей №17
GitHubbridgecrewio/checkov

checkov

Инструмент статического анализа для инфраструктуры как код, который обнаруживает облачные неверные конфигурации, уязвимости и секреты в Terraform, Kubernetes, CloudFormation и образах контейнеров во время сборки.

РепозиторийСайт

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться
[![checkov](https://assets.kitploit.com/production/public/readmes/5028/e0ef704fc4908fd67f7ae1030947e301de092a1db70ceae584c937c1f8ec3303.png)](#)
       
[![Maintained by Prisma Cloud](https://img.shields.io/badge/maintained_by-Prisma_Cloud-blue)](https://prismacloud.io/?utm_source=github&utm_medium=organic_oss&utm_campaign=checkov)
[![build status](https://github.com/bridgecrewio/checkov/workflows/build/badge.svg)](https://github.com/bridgecrewio/checkov/actions?query=workflow%3Abuild)
[![security status](https://github.com/bridgecrewio/checkov/workflows/security/badge.svg)](https://github.com/bridgecrewio/checkov/actions?query=event%3Apush+branch%3Amaster+workflow%3Asecurity)
[![code_coverage](https://raw.githubusercontent.com/bridgecrewio/checkov/main/coverage.svg?sanitize=true)](https://github.com/bridgecrewio/checkov/actions?query=workflow%3Acoverage)
[![docs](https://img.shields.io/badge/docs-passing-brightgreen)](https://www.checkov.io/1.Welcome/What%20is%20Checkov.html?utm_source=github&utm_medium=organic_oss&utm_campaign=checkov)
[![PyPI](https://img.shields.io/pypi/v/checkov)](https://pypi.org/project/checkov/)
[![Python Version](https://img.shields.io/pypi/pyversions/checkov)](#)
[![Terraform Version](https://img.shields.io/badge/tf-%3E=0.12.0-blue.svg)](#)
[![Downloads](https://static.pepy.tech/badge/checkov)](https://pepy.tech/project/checkov)
[![Docker Pulls](https://img.shields.io/docker/pulls/bridgecrew/checkov.svg)](https://hub.docker.com/r/bridgecrew/checkov)
[![slack-community](https://img.shields.io/badge/Slack-4A154B?style=plastic&logo=slack&logoColor=white)](https://codifiedsecurity.slack.com/)


**Checkov** — это инструмент статического анализа кода для инфраструктуры как кода (IaC), а также инструмент анализа состава программного обеспечения (SCA) для образов и пакетов с открытым исходным кодом.

Он сканирует облачную инфраструктуру, подготовленную с помощью [Terraform](https://terraform.io/), [Terraform plan](https://github.com/bridgecrewio/checkov/blob/main/docs/7.Scan%20Examples/Terraform%20Plan%20Scanning.md), [Cloudformation](https://github.com/bridgecrewio/checkov/blob/main/docs/7.Scan%20Examples/Cloudformation.md), [AWS SAM](https://github.com/bridgecrewio/checkov/blob/main/docs/7.Scan%20Examples/AWS%20SAM.md), [Kubernetes](https://github.com/bridgecrewio/checkov/blob/main/docs/7.Scan%20Examples/Kubernetes.md), [Helm charts](https://github.com/bridgecrewio/checkov/blob/main/docs/7.Scan%20Examples/Helm.md), [Kustomize](https://github.com/bridgecrewio/checkov/blob/main/docs/7.Scan%20Examples/Kustomize.md), [Dockerfile](https://github.com/bridgecrewio/checkov/blob/main/docs/7.Scan%20Examples/Dockerfile.md),  [Serverless](https://github.com/bridgecrewio/checkov/blob/main/docs/7.Scan%20Examples/Serverless%20Framework.md), [Bicep](https://github.com/bridgecrewio/checkov/blob/main/docs/7.Scan%20Examples/Bicep.md), [OpenAPI](https://github.com/bridgecrewio/checkov/blob/main/docs/7.Scan%20Examples/OpenAPI.md), [ARM Templates](https://github.com/bridgecrewio/checkov/blob/main/docs/7.Scan%20Examples/Azure%20ARM%20templates.md) или [OpenTofu](https://opentofu.org/) и обнаруживает ошибки конфигурации безопасности и соответствия с помощью графового сканирования.

Он выполняет [сканирование анализа состава программного обеспечения (SCA)](https://github.com/bridgecrewio/checkov/blob/main/docs/7.Scan%20Examples/Sca.md), которое представляет собой сканирование пакетов с открытым исходным кодом и образов на наличие общих уязвимостей и экспозиций (CVE).
 
Checkov также лежит в основе [**Prisma Cloud Application Security**](https://www.prismacloud.io/prisma/cloud/cloud-code-security/?utm_source=github&utm_medium=organic_oss&utm_campaign=checkov) — платформы, ориентированной на разработчиков, которая кодифицирует и упрощает облачную безопасность на протяжении всего жизненного цикла разработки. Prisma Cloud выявляет, исправляет и предотвращает ошибочные конфигурации облачных ресурсов и файлов инфраструктуры как кода. 

<a href="https://www.prismacloud.io/prisma/request-a-prisma-cloud-trial/?utm_campaign=checkov-github-repo&utm_source=github.com&utm_medium=get-started-button" title="Try_Prisma_Cloud">
    <img src="https://assets.kitploit.com/production/public/readmes/5028/07143f139225d2cb78e912eef2a81596afbecea62c59f7fd2ddd9e2afae4b16c.png" align="right" width="120">
</a>


<a href="https://docs.prismacloud.io/en/enterprise-edition/use-cases/secure-the-source/secure-the-source" title="Docs">
    <img src="https://assets.kitploit.com/production/public/readmes/5028/53172e24391eaee525f32997277346454f872d5936b3008f43d926dba0b5f713.png" align="right" width="120">
</a>

## **Оглавление**

- [Возможности](#features)
- [Скриншоты](#screenshots)
- [Начало работы](#getting-started)
- [Отказ от ответственности](#disclaimer)
- [Поддержка](#support)
- [Миграция с v2 на v3](https://github.com/bridgecrewio/checkov/blob/main/docs/1.Welcome/Migration.md)

 ## Возможности

 * [Более 1000 встроенных политик](https://github.com/bridgecrewio/checkov/blob/main/docs/5.Policy%20Index/all.md) покрывают лучшие практики безопасности и соответствия требованиям для AWS, Azure и Google Cloud.
 * Сканирует файлы шаблонов Terraform, Terraform Plan, Terraform JSON, CloudFormation, AWS SAM, Kubernetes, Helm, Kustomize, Dockerfile, Serverless framework, Ansible, Bicep, ARM и OpenTofu.
 * Сканирует файлы рабочих процессов Argo Workflows, Azure Pipelines, BitBucket Pipelines, Circle CI Pipelines, GitHub Actions и GitLab CI.
 * Поддерживает политики с учетом контекста на основе графового сканирования в памяти.
 * Поддерживает формат Python для атрибутивных политик и формат YAML как для атрибутивных, так и для составных политик.
 * Обнаруживает [учетные данные AWS](https://github.com/bridgecrewio/checkov/blob/main/docs/2.Basics/Scanning%20Credentials%20and%20Secrets.md) в EC2 Userdata, переменных окружения Lambda и провайдерах Terraform.
 * [Определяет секреты](https://www.prismacloud.io/prisma/cloud/secrets-security) с помощью регулярных выражений, ключевых слов и обнаружения на основе энтропии.
 * Оценивает настройки [Terraform Provider](https://registry.terraform.io/browse/providers) для регулирования создания, управления и обновлений IaaS, PaaS или SaaS, управляемых через Terraform.
 * Политики поддерживают оценку [переменных](https://github.com/bridgecrewio/checkov/blob/main/docs/2.Basics/Handling%20Variables.md) с их необязательным значением по умолчанию.
 * Поддерживает встроенное [подавление](https://github.com/bridgecrewio/checkov/blob/main/docs/2.Basics/Suppressing%20and%20Skipping%20Policies.md) принятых рисков или ложных срабатываний для уменьшения повторяющихся неудач сканирования. Также поддерживает глобальный пропуск при использовании CLI.
 * [Вывод](https://github.com/bridgecrewio/checkov/blob/main/docs/2.Basics/Reviewing%20Scan%20Results.md) в настоящее время доступен в виде CLI, [CycloneDX](https://cyclonedx.org), JSON, JUnit XML, CSV, SARIF и github markdown, а также ссылка на [руководства](https://docs.prismacloud.io/en/enterprise-edition/policy-reference/) по исправлению.
 
## Скриншоты

Результаты сканирования в CLI

![scan-screenshot](https://raw.githubusercontent.com/bridgecrewio/checkov/main/docs/checkov-recording.gif)

Результаты запланированного сканирования в Jenkins

![jenikins-screenshot](https://assets.kitploit.com/production/public/readmes/5028/8599a8bd1f5d937a55001b6a48b6a8e78149b1e0e834e505d13341188e227c7f.png)

## Начало работы

### Требования
 * Python >= 3.9, <=3.12
 * Terraform >= 0.12

### Установка

Для установки pip следуйте официальной [документации](https://pip.pypa.io/en/stable/cli/pip_install/)```sh
pip3 install checkov
```
Некоторые среды (например, Debian 12) могут потребовать установки Checkov в виртуальное окружение```sh
# Create and activate a virtual environment
python3 -m venv /path/to/venv/checkov
cd /path/to/venv/checkov
source ./bin/activate

# Install Checkov with pip
pip install checkov

# Optional: Create a symlink for easy access
sudo ln -s /path/to/venv/checkov/bin/checkov /usr/local/bin/checkov
```
или с помощью [Homebrew](https://formulae.brew.sh/formula/checkov) (macOS или Linux)```sh
brew install checkov
```
### Включение автодополнения bash```sh
source <(register-python-argcomplete checkov)
```
### Обновление

если вы установили checkov с помощью pip3```sh
pip3 install -U checkov
```
или с Homebrew```sh
brew upgrade checkov
```
### Настроить входную папку или файл```sh
checkov --directory /user/path/to/iac/code
```
Или конкретный файл или файлы```sh
checkov --file /user/tf/example.tf
```
Или```sh
checkov -f /user/cloudformation/example1.yml -f /user/cloudformation/example2.yml
```
Или файл плана terraform в формате json```sh
terraform init
terraform plan -out tf.plan
terraform show -json tf.plan  > tf.json
checkov -f tf.json
```
Примечание: выходной файл `terraform show` `tf.json` будет одной строкой. 
По этой причине все находки будут сообщаться с номером строки 0 от Checkov```sh
check: CKV_AWS_21: "Ensure all data stored in the S3 bucket have versioning enabled"
	FAILED for resource: aws_s3_bucket.customer
	File: /tf/tf.json:0-0
	Guide: https://docs.prismacloud.io/en/enterprise-edition/policy-reference/aws-policies/s3-policies/s3-16-enable-versioning
  ```
Если у вас установлен `jq`, вы можете преобразовать JSON-файл в несколько строк с помощью следующей команды:```sh
terraform show -json tf.plan | jq '.' > tf.json
```
Результат сканирования был бы гораздо удобнее для пользователя.```sh
checkov -f tf.json
Check: CKV_AWS_21: "Ensure all data stored in the S3 bucket have versioning enabled"
	FAILED for resource: aws_s3_bucket.customer
	File: /tf/tf1.json:224-268
	Guide: https://docs.prismacloud.io/en/enterprise-edition/policy-reference/aws-policies/s3-policies/s3-16-enable-versioning

		225 |               "values": {
		226 |                 "acceleration_status": "",
		227 |                 "acl": "private",
		228 |                 "arn": "arn:aws:s3:::mybucket",

```
В качестве альтернативы укажите корень репозитория HCL-файлов, использованных для создания файла плана, с помощью флага `--repo-root-for-plan-enrichment`, чтобы обогатить вывод соответствующим путём к файлу, номерами строк и блоком кода ресурса(ов). Дополнительным преимуществом является то, что подавление проверок будет обрабатываться соответствующим образом.```sh
checkov -f tf.json --repo-root-for-plan-enrichment /user/path/to/iac/code
```
### Пример результата сканирования (CLI)```sh
Passed Checks: 1, Failed Checks: 1, Suppressed Checks: 0
Check: "Ensure all data stored in the S3 bucket is securely encrypted at rest"
/main.tf:
	 Passed for resource: aws_s3_bucket.template_bucket
Check: "Ensure all data stored in the S3 bucket is securely encrypted at rest"
/../regionStack/main.tf:
	 Failed for resource: aws_s3_bucket.sls_deployment_bucket_name
```
Начните использовать Checkov, прочитав страницу [Начало работы](https://github.com/bridgecrewio/checkov/blob/main/docs/1.Welcome/Quick%20Start.md).

### Использование Docker```sh
docker pull bridgecrew/checkov
docker run --tty --rm --volume /user/tf:/tf --workdir /tf bridgecrew/checkov --directory /tf
```
Примечание: если вы используете Python 3.6 (версия по умолчанию в Ubuntu 18.04), checkov не будет работать, и появится сообщение об ошибке `ModuleNotFoundError: No module named 'dataclasses'`. В этом случае вы можете использовать версию docker.

Обратите внимание, что в некоторых случаях перенаправление вывода `docker run --tty` в файл — например, если вы хотите сохранить вывод Checkov JUnit в файл — приведет к печати дополнительных управляющих символов. Это может нарушить синтаксический анализ файла. Если вы столкнулись с этим, удалите флаг `--tty`.

Флаг `--workdir /tf` является необязательным и позволяет изменить рабочую директорию на смонтированный том. Если вы используете вывод SARIF `-o sarif`, файл results.sarif будет выведен на смонтированный том (`/user/tf` в примере выше). Если вы не укажете этот флаг, рабочей директорией будет "/".

### Запуск или пропуск проверок

С помощью флагов командной строки вы можете указать запуск только указанных проверок (разрешенный список) или запуск всех проверок, кроме перечисленных (список запретов). Если вы используете интеграцию с платформой через ключ API, вы также можете указать порог серьезности для пропуска и/или включения. Кроме того, поскольку файлы json не могут содержать комментарии, можно передать шаблон регулярного выражения для пропуска сканирования секретов в json-файлах.

См. документацию для получения более подробной информации о том, как эти флаги работают вместе.

## Примеры

Разрешить запуск только двух указанных проверок:```sh
checkov --directory . --check CKV_AWS_20,CKV_AWS_57
```
Запустить все проверки, кроме указанной:```sh
checkov -d . --skip-check CKV_AWS_20
```
Запустить все проверки, кроме проверок с указанными шаблонами:```sh
checkov -d . --skip-check CKV_AWS*
```
Run all checks that are MEDIUM severity or higher (requires API key):```sh
checkov -d . --check MEDIUM --bc-api-key ...
```
Запустите все проверки с уровнем серьезности MEDIUM или выше, а также проверку CKV_123 (предположим, это проверка с низким уровнем серьезности LOW):```sh
checkov -d . --check MEDIUM,CKV_123 --bc-api-key ...
```
Пропустить все проверки с уровнем серьезности СРЕДНИЙ или ниже:```sh
checkov -d . --skip-check MEDIUM --bc-api-key ...
```
Пропустить все проверки с уровнем MEDIUM и ниже, а также проверку CKV_789 (предполагается, что это проверка высокой степени серьезности):```sh
checkov -d . --skip-check MEDIUM,CKV_789 --bc-api-key ...
```
Запустить все проверки с уровнем серьезности MEDIUM или выше, но пропустить проверку CKV_123 (предполагается, что это проверка с уровнем серьезности MEDIUM или выше):```sh
checkov -d . --check MEDIUM --skip-check CKV_123 --bc-api-key ...
```
Запустить проверку CKV_789, но пропустить её, если она среднего уровня серьезности (логика --check всегда применяется перед --skip-check).```sh
checkov -d . --skip-check MEDIUM --check CKV_789 --bc-api-key ...
```
Для рабочих нагрузок Kubernetes вы также можете использовать разрешенные/запрещенные пространства имен.  Например, не сообщайте никаких результатов для
пространства имен kube-system:```sh
checkov -d . --skip-check kube-system
```
Выполните сканирование образа контейнера. Сначала извлеките или соберите образ, затем укажите его по хэшу, ID или имени:тегу:```sh
checkov --framework sca_image --docker-image sha256:1234example --dockerfile-path /Users/path/to/Dockerfile --repo-id ... --bc-api-key ...

checkov --docker-image <image-name>:tag --dockerfile-path /User/path/to/Dockerfile --repo-id ... --bc-api-key ...
```
Вы также можете использовать флаг --image для сканирования образа контейнера вместо --docker-image для сокращения:```sh
checkov --image <image-name>:tag --dockerfile-path /User/path/to/Dockerfile --repo-id ... --bc-api-key ...
```
Запустите SCA-сканирование пакетов в репозитории:```sh
checkov -d . --framework sca_package --bc-api-key ... --repo-id <repo_id(arbitrary)>
```
Запустите сканирование каталога с переменными окружения, отключающими буферизацию, добавляя журналы уровня отладки:```sh
PYTHONUNBUFFERED=1 LOG_LEVEL=DEBUG checkov -d .
```
ИЛИ включите переменные окружения для нескольких запусков```sh
export PYTHONUNBUFFERED=1 LOG_LEVEL=DEBUG
checkov -d .
```
Запустить сканирование секретов во всех файлах в MyDirectory. Пропустить проверку CKV_SECRET_6 для json-файлов, чей суффикс — DontScan.```sh
checkov -d /MyDirectory --framework secrets --repo-id ... --bc-api-key ... --skip-check CKV_SECRET_6:.*DontScan.json$
```
Запустите сканирование секретов для всех файлов в MyDirectory. Пропустите проверку CKV_SECRET_6 для json-файлов, содержащих "skip_test" в пути.```sh
checkov -d /MyDirectory --framework secrets --repo-id ... --bc-api-key ... --skip-check CKV_SECRET_6:.*skip_test.*json$
```
Можно скрыть значения из результатов сканирования, указав файл конфигурации (с помощью флага --config-file) с записью маски. Маскирование может применяться к ресурсу и значению (или нескольким значениям, разделённым запятой). Примеры:```sh
mask:
- aws_instance:user_data
- azurerm_key_vault_secret:admin_password,user_passwords
```
В приведенном выше примере будут скрыты следующие значения:
- user_data для ресурса aws_instance
- admin_password и user_passwords для azurerm_key_vault_secret


### Подавление/Игнорирование проверки

Как и любой инструмент статического анализа, он ограничен своей областью анализа.
Например, если ресурс управляется вручную или с помощью последующих инструментов управления конфигурацией, можно вставить подавление как простую аннотацию в коде.

#### Формат комментария подавления

Чтобы пропустить проверку для заданного блока определения Terraform или ресурса CloudFormation, примените следующий шаблон комментария в его области:

`checkov:skip=<check_id>:<suppression_comment>`

* `<check_id>` — один из [доступных сканеров проверок](docs/5.Policy Index/all.md)
* `<suppression_comment>` — необязательная причина подавления, которая будет включена в вывод

#### Пример

Следующий комментарий пропускает проверку `CKV_AWS_20` для ресурса, идентифицированного как `foo-bucket`, где сканирование проверяет, является ли корзина AWS S3 приватной.
В примере корзина настроена на публичный доступ для чтения; добавление комментария подавления позволит пропустить соответствующую проверку, вместо того чтобы проверка завершилась неудачей.```hcl-terraform
resource "aws_s3_bucket" "foo-bucket" {
  region        = var.region
    #checkov:skip=CKV_AWS_20:The bucket is a public static content host
  bucket        = local.bucket_name
  force_destroy = true
  acl           = "public-read"
}
```
Теперь вывод будет содержать запись результата проверки ``SKIPPED``:```bash
...
...
Check: "S3 Bucket has an ACL defined which allows public access."
	SKIPPED for resource: aws_s3_bucket.foo-bucket
	Suppress comment: The bucket is a public static content host
	File: /example_skip_acl.tf:1-25

...
```
Чтобы пропустить несколько проверок, добавьте каждую с новой строки.```
  #checkov:skip=CKV2_AWS_6
  #checkov:skip=CKV_AWS_20:The bucket is a public static content host
```
Для подавления проверок в манифестах Kubernetes используются аннотации следующего формата:
`checkov.io/skip#: <check_id>=<suppression_comment>`

Например:```bash
apiVersion: v1
kind: Pod
metadata:
  name: mypod
  annotations:
    checkov.io/skip1: CKV_K8S_20=I don't care about Privilege Escalation :-O
    checkov.io/skip2: CKV_K8S_14
    checkov.io/skip3: CKV_K8S_11=I have not set CPU limits as I want BestEffort QoS
spec:
  containers:
...
```
#### Логирование

Для детального логирования в stdout установите переменную окружения `LOG_LEVEL` в значение `DEBUG`.

По умолчанию используется `LOG_LEVEL=WARNING`.

#### Пропуск каталогов

Чтобы пропустить файлы или каталоги, используйте аргумент `--skip-path`, который можно указывать несколько раз. Этот аргумент принимает регулярные выражения для путей относительно текущего рабочего каталога. Вы можете использовать его для пропуска целых каталогов и/или конкретных файлов.

По умолчанию будут пропущены все каталоги с именами `node_modules`, `.terraform` и `.serverless`, а также любые файлы или каталоги, начинающиеся с `.`.
Чтобы отменить пропуск каталогов, начинающихся с `.`, переопределите переменную окружения `CKV_IGNORE_HIDDEN_DIRECTORIES`: `export CKV_IGNORE_HIDDEN_DIRECTORIES=false`

Вы можете переопределить набор каталогов, пропускаемых по умолчанию, установив переменную окружения `CKV_IGNORED_DIRECTORIES`.
Обратите внимание: если вы хотите сохранить этот список и добавить к нему, вы должны включить эти значения. Например, `CKV_IGNORED_DIRECTORIES=mynewdir` пропустит только этот каталог, но не остальные, упомянутые выше. Эта переменная является устаревшей; рекомендуется использовать флаг `--skip-file`.

#### Вывод в консоль

Вывод в консоль по умолчанию цветной. Для переключения на монохромный вывод установите переменную окружения:
`ANSI_COLORS_DISABLED`

#### Расширение для VS Code

Если вы хотите использовать Checkov в VS Code, попробуйте [расширение Prisma Cloud](https://marketplace.visualstudio.com/items?itemName=PrismaCloud.prisma-cloud).

### Настройка с помощью конфигурационного файла

Checkov можно настроить с помощью YAML-конфигурационного файла. По умолчанию checkov ищет файл `.checkov.yaml` или `.checkov.yml` в следующих местах в порядке приоритета:
* Каталог, для которого выполняется checkov (`--directory`)
* Текущий рабочий каталог, из которого вызывается checkov.
* Домашний каталог пользователя.

**Внимание**: рекомендуется, чтобы конфигурационный файл checkov загружался из доверенного источника, состоящего из проверенной идентификации, чтобы проверяемые файлы, идентификаторы проверок и загруженные пользовательские проверки были такими, как ожидается.

Пользователи также могут передать путь к конфигурационному файлу через командную строку. В этом случае другие конфигурационные файлы будут проигнорированы. Например:```sh
checkov --config-file path/to/config.yaml
```
Пользователи также могут создать конфигурационный файл с помощью команды `--create-config`, которая берет текущие аргументы командной строки и записывает их по указанному пути. Например:```sh
checkov --compact --directory test-dir --docker-image sample-image --dockerfile-path Dockerfile --download-external-modules True --external-checks-dir sample-dir --quiet --repo-id prisma-cloud/sample-repo --skip-check CKV_DOCKER_3,CKV_DOCKER_2 --skip-framework dockerfile secrets --soft-fail --branch develop --check CKV_DOCKER_1 --create-config /Users/sample/config.yml
```
Создаст файл `config.yaml`, который выглядит следующим образом:```yaml
branch: develop
check:
  - CKV_DOCKER_1
compact: true
directory:
  - test-dir
docker-image: sample-image
dockerfile-path: Dockerfile
download-external-modules: true
evaluate-variables: true
external-checks-dir:
  - sample-dir
external-modules-download-path: .external_modules
framework:
  - all 
output: cli 
quiet: true 
repo-id: prisma-cloud/sample-repo 
skip-check: 
  - CKV_DOCKER_3 
  - CKV_DOCKER_2 
skip-framework:
  - dockerfile
  - secrets
soft-fail: true
```
Пользователи также могут использовать флаг `--show-config` для просмотра всех аргументов и настроек, а также их источника: командная строка, файл конфигурации, переменная окружения или значение по умолчанию. Например:```sh
checkov --show-config
```
Отображает:```sh
Command Line Args:   --show-config
Environment Variables:
  BC_API_KEY:        your-api-key
Config File (/Users/sample/.checkov.yml):
  soft-fail:         False
  branch:            master
  skip-check:        ['CKV_DOCKER_3', 'CKV_DOCKER_2']
Defaults:
  --output:          cli
  --framework:       ['all']
  --download-external-modules:False
  --external-modules-download-path:.external_modules
  --evaluate-variables:True
```
## Участие в разработке

Приветствуется любой вклад!

Начните с ознакомления с [правилами участия](https://github.com/bridgecrewio/checkov/blob/main/CONTRIBUTING.md). Затем посмотрите на [хорошие первые задачи](https://github.com/bridgecrewio/checkov/issues?q=is%3Aissue+is%3Aopen+label%3A%22good+first+issue%22).

Вы можете даже начать разработку в один клик в браузере через Gitpod по следующей ссылке:

[![Open in Gitpod](https://gitpod.io/button/open-in-gitpod.svg)](https://gitpod.io/#https://github.com/bridgecrewio/checkov)

Хотите добавить новые проверки? Узнайте, как написать новую проверку (также называемую политикой) [здесь](https://github.com/bridgecrewio/checkov/blob/main/docs/6.Contribution/Contribution%20Overview.md).

## Отказ от ответственности
`checkov` не сохраняет, не публикует и не передает никому никакую идентифицируемую информацию о клиентах.  
Никакая идентифицируемая информация о клиентах не используется для запросов к общедоступным руководствам Prisma Cloud.
`checkov` использует API Prisma Cloud для обогащения результатов ссылками на руководства по исправлению.
Чтобы пропустить этот вызов API, используйте флаг `--skip-download`.

## Поддержка
```

---

[Read more](https://github.com/bridgecrewio/checkov)
Скачать инструмент