Защита от отправки предотвращает случайное фиксацию секретов в репозитории путем блокировки push-уведомлений, содержащих поддерживаемые секреты.
При попытке отправить поддерживаемый секрет из командной строки в репозиторий, защищенный защитой push-уведомлений, GitHub блокирует отправку.
Необходимо выполнить следующие действия:
-
**Удалите** секрет из ветви. Дополнительные сведения см. в разделе ["Разрешение заблокированной отправки](/code-security/how-tos/secure-your-secrets/work-with-leak-prevention/working-with-push-protection-from-the-command-line#resolving-a-blocked-push)". -
**Следуйте предоставленному URL-адресу** , чтобы узнать, какие параметры доступны для отправки. Дополнительные сведения см. в разделе [об обходе защиты](/code-security/how-tos/secure-your-secrets/work-with-leak-prevention/working-with-push-protection-from-the-command-line#bypassing-push-protection) от push-уведомлений и [обхода привилегий обхода](/code-security/how-tos/secure-your-secrets/work-with-leak-prevention/working-with-push-protection-from-the-command-line#requesting-bypass-privileges).
В командной строке будет отображаться до пяти обнаруженных секретов. Если определенный секрет уже обнаружен в репозитории и оповещение уже существует, GitHub не заблокирует этот секрет.
Если вы подтверждаете, что секрет является реальным и что вы планируете исправить его позже, постарайтесь как можно скорее исправить секрет. Например, можно отозвать секрет и удалить его из журнала фиксаций репозитория. Реальные секреты, которые отображаются, необходимо отозвать для предотвращения несанкционированного доступа. Прежде чем отзывать секрет, можно сначала сменить его. Дополнительные сведения см. в разделе Удаление конфиденциальных данных из репозитория.
Примечание.
- Если конфигурация Git поддерживает отправку в несколько ветвей, а не только в текущую ветвь, отправка может быть заблокирована из-за дополнительных и непреднамеренных ссылок. Дополнительные сведения см. в разделе Параметры
push.defaultв документации Git. - Если истечет время ожидания secret scanning при отправке, GitHub все равно выполнит проверку фиксаций на наличие секретов после отправки.