---
url: /zh/security/intro.md
description: CNB 代码安全扫描配置概览，包括核心概念、核心能力、使用建议和配置文件位置。
---
CNB 代码安全扫描用于检查仓库中的敏感信息和开源组件风险，默认无需配置。
需要调整扫描范围时，可使用 `.scanignore` 或 `.cnb/security/code_scan_config.yml`。

## 核心概念

| 概念 | 说明 |
|---|---|
| `.scanignore` | 仓库级公共忽略文件，使用 gitignore 风格的路径规则，默认对所有扫描能力生效。 |
| `code_scan_config.yml` | 按能力配置扫描范围、include 和告警处理规则。 |
| 安全能力 | 当前对外开放 `secrets` 和 `software-composition-analysis` 两类能力。未声明的能力沿用平台默认配置。 |

:::: tip 配置关系
`.scanignore` 和 `code_scan_config.yml` 可以同时使用。某个能力配置 `scan.ignoreFrom` 后，
该能力改用指定文件，其他能力继续使用根目录 `.scanignore`。
::::

## 核心能力

| 能力 | 说明 |
|---|---|
| 统一设置扫描范围 | 使用根目录 `.scanignore` 排除路径。 |
| 按能力调整扫描范围 | 使用 `ignoreFrom` 指定忽略文件，或通过 `paths` 添加规则。 |
| 关闭某个能力 | 将对应能力的 `ignoreFrom` 指向内容为 `**` 的文件，即可跳过该能力的扫描。 |
| 拆分配置 | 通过 `include` 将配置拆分到多个子文件，按模块维护。 |
| 规则化忽略告警（Beta） | 基于路径、严重级别等条件，按规则忽略符合条件的扫描结果。 |

## 使用建议

* `.scanignore`、`ignoreFrom` 引用的文件和 `paths` 使用 gitignore 风格的路径规则。
* 仅需公共忽略规则时，只配置 `.scanignore`。
* `ignoreFrom` 指定的文件不会与 `.scanignore` 合并，所需规则应完整写入该文件。
* 未提供配置时，平台使用内置默认值。
* 提交前建议先用 `validate` 插件检查配置，避免 include 路径、字段结构或忽略文件写错。

`validate` 用法见[配置文件 · 用 validate 插件自检](./config-file.md#用-validate-插件自检)。

## 文件位置

```text
<repo-root>/
├── .scanignore                         # 可选，公共忽略规则
└── .cnb/
    └── security/
        ├── code_scan_config.yml        # 可选，能力级配置
        └── scanignore/
            └── secrets                 # 可选，由 ignoreFrom 引用
```

## 下一步

* [快速开始](./quickstart.md) —— 启用代码安全扫描
* [配置文件](./config-file.md) —— 了解忽略文件、include、合并规则和校验方式
* [语法手册](./syntax-reference.md) —— 查看字段级完整参考
