Что такое защита от нежелательных уведомлений?
Push-защита — это функция secret scanning, предназначенная для предотвращения попадания конфиденциальной информации, такой как секреты или токены, в ваш репозиторий. В отличие от secret scanning, который обнаруживает секреты после их фиксации, push-защита проактивно сканирует ваш код на секреты во время процесса push, а затем блокирует push, если они обнаружены.
Как работает защита push-уведомлений
Секреты защиты push-защиты обнаружены в:
- Push из командной строки
- Коммиты, сделанные в GitHub UI
- File uploads to a repository on GitHub
- Запросы к REST API
- Взаимодействие с сервером MCP GitHub (только публичные репозитории)
Когда push-защита обнаруживает потенциальный секрет во время попытки push, она блокирует пуш и предоставляет подробное сообщение с объяснением причины блокировки. Вам потребуется просмотреть заданный код, удалить конфиденциальную информацию и повторно выполнить отправку.
Виды защиты от толчка
Существует два типа защиты от толчка:
-
[Защита от push для репозиториев.](#push-protection-for-repositories) -
[Защита от пуша для пользователей](#push-protection-for-users)
Защита от push для репозиториев.
Вы можете включить защиту от push для репозиториев на уровне репозитория, организации или предприятия. Этот вид защиты от толчка:
- Требуется включение GitHub Secret Protection
- По умолчанию отключён и может быть активирован администратором репозитория, владельцем организации, менеджером безопасности или владельцем предприятия
- Блоки блокируют доступ к определённым защищённым хранилищам
- Генерирует оповещения о обходе от push-защиты во вкладке Security репозитория, организации и предприятия
Совет
Независимо от статуса поддержки защиты от push, организации, находящиеся на GitHub Team и GitHub Enterprise могут запускать бесплатный отчёт для сканирования своего кода на наличие утечок секретов. В отчете также показано, сколько секретных утечек можно было бы предотвратить с помощью защиты от давления. См . раздел AUTOTITLE.
Защита от push-уведомлений для пользователей
Защита от push для пользователей доступна только на GitHub.com и специфична для вашего аккаунта GitHub. Этот вид защиты от толчка:
- Включено по умолчанию
- Останавливает вас от публикации секретов в публичные репозитории GitHub
- Не генерирует оповещения при обходе защиты от пуша, если только защита от пуша не включена на уровне репозитория
Обход защиты от толкания и оповещения
Для защиты от push для репозиториев, по умолчанию любой, кто имеет доступ к записи в репозиторий, может обойти защиту от push, указав причину обхода. Когда участник обходит блок защиты от push, GitHub:
- Создаёт оповещение во вкладке «Безопасность » репозитория, организации и предприятия
- Добавляет событие обхода в журнал аудита
- Отправляет уведомление по электронной почте владельцам личных аккаунтов, организаций и предприятий, менеджерам по безопасности и администраторам репозиториев, которые следят за репозиторием, с ссылкой на секрет и причиной его разрешения
Если вы хотите больше контроля над тем, какие участники могут обойти защиту от пуша, а какие пушы с секретами должны быть разрешены, вы можете настроить специальную группу рецензентов для контроля и управления запросами на обход.
Преимущества защиты от толчка
-
**Предотвращение безопасности:** защита push-уведомлений выступает в качестве механизма защиты переднего плана путем сканирования кода секретов во время отправки. Такой профилактический подход помогает выявлять потенциальные проблемы до их слияния в репозиторий. -
**Немедленная обратная связь:** разработчики получают мгновенные отзывы, если во время попытки отправки обнаружен потенциальный секрет. Это немедленное уведомление позволяет быстро исправляться, уменьшая вероятность предоставления конфиденциальной информации. -
**Снижение риска утечки данных:** блокируя фиксации, содержащие конфиденциальную информацию, защита push-уведомлений значительно снижает риск случайной утечки данных. Это помогает защититься от несанкционированного доступа к инфраструктуре, службам и данным. -
**Эффективное управление секретами:** вместо ретроспективной работы с открытыми секретами разработчики могут решать проблемы в источнике. Это делает управление секретами более эффективным и менее трудоемким. -
**Функция обхода для гибкости:** В случаях ложных срабатываний или необходимости определённых паттернов можно обойти защиту от push для пользователей, а назначенные пользователи могут использовать функцию делегированного обхода для обхода пуш-защиты репозиториев. Это обеспечивает гибкость без ущерба для общей безопасности. -
**Возможность обнаруживать пользовательские шаблоны (для репозиториев в организациях):** Организации могут определять индивидуальные паттерны для обнаружения секретов, уникальных для их среды. Такая настройка гарантирует, что защита от пуша может эффективно выявлять и блокировать даже нестандартные секреты.
Настройка
После включения защиты от пуш-репозиториев вы можете настроить её следующим образом:
- Определение пользовательских паттернов для блок-пушей, содержащих уникальные секретные паттерны
- Определение участников, которые могут обойти защиту от push и одобрить запросы на обход для других участников
- Настройка секретных паттернов, включенных в защиту от push на уровне предприятия или организации
Дальнейшие действия
Чтобы включить защиту от пуша: * Для репозитория см. АВТОЗАГОЛОВОК. * Для организации или предприятия необходимо применить security configuration. См. раздел [AUTOTITLE и Применение рекомендуемой GitHub конфигурации безопасности в вашей организации](/code-security/how-tos/secure-at-scale/configure-enterprise-security/establish-complete-coverage/applying-the-github-recommended-security-configuration-to-your-enterprise).
Список секретов и поставщиков услуг, поддерживаемых push-защитой, см. Поддерживаемые шаблоны сканирования секретов.