# Исключение папок и файлов из проверки секретов

Вы можете настроить secret scanning так, чтобы оповещения автоматически закрывались для секретов, найденных в определённых папках или файлах, secret_scanning.yml настроив файл в вашем репозитории.

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

Вы можете настроить `secret_scanning.yml` файл так, чтобы он автоматически закрывал оповещения в определённых каталогах из secret scanning, исключая эти каталоги, включённые в защиту от push. Эти оповещения закрыты как "игнорируются конфигурацией".

## Исключение каталогов из Уведомления о секретном сканировании для пользователей

1. На GitHubперейдите на главную страницу репозитория.
2. Над списком \*\*\*\* файлов выберите раскрывающееся меню <svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-triangle-down" aria-label="triangle down icon" role="img"><path d="m4.427 7.427 3.396 3.396a.25.25 0 0 0 .354 0l3.396-3.396A.25.25 0 0 0 11.396 7H4.604a.25.25 0 0 0-.177.427Z"></path></svg>, а затем щелкните **<svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-plus" aria-label="plus" role="img"><path d="M7.75 2a.75.75 0 0 1 .75.75V7h4.25a.75.75 0 0 1 0 1.5H8.5v4.25a.75.75 0 0 1-1.5 0V8.5H2.75a.75.75 0 0 1 0-1.5H7V2.75A.75.75 0 0 1 7.75 2Z"></path></svg> Создать новый файл**.

   Кроме того, можно щелкнуть <svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-plus" aria-label="plus icon" role="img"><path d="M7.75 2a.75.75 0 0 1 .75.75V7h4.25a.75.75 0 0 1 0 1.5H8.5v4.25a.75.75 0 0 1-1.5 0V8.5H2.75a.75.75 0 0 1 0-1.5H7V2.75A.75.75 0 0 1 7.75 2Z"></path></svg> в представлении дерева файлов слева.

   ![Снимок экрана: главная страница репозитория с выделением значка "Добавить файл" и значком "плюс", описанным выше, с оранжевым контуром.](/assets/images/help/repository/add-file-buttons.png)
3. В поле имени файла введите .github/secret\_scanning.yml".
4. **В разделе «Редактировать новый файл**» введите`paths-ignore:`, а затем пути, которые хотите исключить из secret scanning.

   ```yaml copy
   paths-ignore:
     - "docs/**"
   ```

   Это подсказывает secret scanning автоматически закрывать оповещения для всех файлов в `docs` каталоге. Этот пример файла можно использовать в качестве шаблона для добавления файлов и папок, которые вы хотите исключить из собственных репозиториев.

   Вы также можете использовать специальные символы, такие как `*` фильтрация путей. Дополнительные сведения о шаблонах фильтров см. в синтаксисе [рабочего процесса для GitHub Actions](/ru/actions/reference/workflow-syntax-for-github-actions#filter-pattern-cheat-sheet).

   ```yaml copy
   paths-ignore:
     - "foo/bar/*.js"
   ```

   > \[!NOTE]
   >
   > * Если записей более 1000 `paths-ignore`в , secret scanning из сканирования исключат только первые 1000 каталогов.
   > * Если `secret_scanning.yml` он больше 1 МБ, secret scanning он игнорирует весь файл.

## Проверка того, что папка исключена из secret scanning

1. Открытие файла в каталоге, исключенном из проверки секретов

2. Вставьте предварительно недопустимый секрет или тестовый секрет.

3. Зафиксируйте изменения.

4. На GitHubперейдите на главную страницу репозитория.

5. Под названием репозитория нажмите на **<svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-shield" aria-label="shield" role="img"><path d="M7.467.133a1.748 1.748 0 0 1 1.066 0l5.25 1.68A1.75 1.75 0 0 1 15 3.48V7c0 1.566-.32 3.182-1.303 4.682-.983 1.498-2.585 2.813-5.032 3.855a1.697 1.697 0 0 1-1.33 0c-2.447-1.042-4.049-2.357-5.032-3.855C1.32 10.182 1 8.566 1 7V3.48a1.75 1.75 0 0 1 1.217-1.667Zm.61 1.429a.25.25 0 0 0-.153 0l-5.25 1.68a.25.25 0 0 0-.174.238V7c0 1.358.275 2.666 1.057 3.86.784 1.194 2.121 2.34 4.366 3.297a.196.196 0 0 0 .154 0c2.245-.956 3.582-2.104 4.366-3.298C13.225 9.666 13.5 8.36 13.5 7V3.48a.251.251 0 0 0-.174-.237l-5.25-1.68ZM8.75 4.75v3a.75.75 0 0 1-1.5 0v-3a.75.75 0 0 1 1.5 0ZM9 10.5a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z"></path></svg> Security and quality** вкладку. Если вы не видите вкладку «<svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-shield" aria-label="shield" role="img"><path d="M7.467.133a1.748 1.748 0 0 1 1.066 0l5.25 1.68A1.75 1.75 0 0 1 15 3.48V7c0 1.566-.32 3.182-1.303 4.682-.983 1.498-2.585 2.813-5.032 3.855a1.697 1.697 0 0 1-1.33 0c-2.447-1.042-4.049-2.357-5.032-3.855C1.32 10.182 1 8.566 1 7V3.48a1.75 1.75 0 0 1 1.217-1.667Zm.61 1.429a.25.25 0 0 0-.153 0l-5.25 1.68a.25.25 0 0 0-.174.238V7c0 1.358.275 2.666 1.057 3.86.784 1.194 2.121 2.34 4.366 3.297a.196.196 0 0 0 .154 0c2.245-.956 3.582-2.104 4.366-3.298C13.225 9.666 13.5 8.36 13.5 7V3.48a.251.251 0 0 0-.174-.237l-5.25-1.68ZM8.75 4.75v3a.75.75 0 0 1-1.5 0v-3a.75.75 0 0 1 1.5 0ZM9 10.5a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z"></path></svg> Security and quality» — выберите **<svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-kebab-horizontal" aria-label="kebab-horizontal" role="img"><path d="M8 9a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3ZM1.5 9a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3Zm13 0a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3Z"></path></svg>** выпадающее меню и нажмите **<svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-shield" aria-label="shield" role="img"><path d="M7.467.133a1.748 1.748 0 0 1 1.066 0l5.25 1.68A1.75 1.75 0 0 1 15 3.48V7c0 1.566-.32 3.182-1.303 4.682-.983 1.498-2.585 2.813-5.032 3.855a1.697 1.697 0 0 1-1.33 0c-2.447-1.042-4.049-2.357-5.032-3.855C1.32 10.182 1 8.566 1 7V3.48a1.75 1.75 0 0 1 1.217-1.667Zm.61 1.429a.25.25 0 0 0-.153 0l-5.25 1.68a.25.25 0 0 0-.174.238V7c0 1.358.275 2.666 1.057 3.86.784 1.194 2.121 2.34 4.366 3.297a.196.196 0 0 0 .154 0c2.245-.956 3.582-2.104 4.366-3.298C13.225 9.666 13.5 8.36 13.5 7V3.48a.251.251 0 0 0-.174-.237l-5.25-1.68ZM8.75 4.75v3a.75.75 0 0 1-1.5 0v-3a.75.75 0 0 1 1.5 0ZM9 10.5a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z"></path></svg> Security and quality**. Не должно быть новых открытых оповещений для секрета, который вы только что ввели в файл.

## Лучшие практики

Основные рекомендации:

* Минимизация числа исключенных каталогов и максимально точное значение при определении исключений. Это гарантирует, что инструкции максимально понятны и что исключения работают должным образом.
* Объясняя, почему определенный файл или папка исключены из комментария в `secret_scanning.yml` файле. Как и в обычном коде, использование комментариев объясняет ваше намерение, что упрощает для других пользователей понимание желаемого поведения.
* Регулярно просматривая `secret_scanning.yml` файл. Некоторые исключения могут больше не применяться с течением времени, и рекомендуется сохранить файл чистым и текущим. Использование комментариев, как показано выше, может помочь в этом.
* Сообщите группе безопасности, какие файлы и папки вы исключили, и почему. Хорошая связь важна для обеспечения того, чтобы все были на одной странице и понимают, почему определенные папки или файлы исключены.