Skip to main content

Этап 1. Согласование стратегии и целей развертывания

Перед включением code scanning и secret scanning разработайте план развертывания GHAS на предприятии.

Эта статья является частью серии "Внедрение GitHub Advanced Security в большом масштабе". Общие сведения об этой серии см. в разделе "Общие сведения о внедрении GitHub Advanced Security в большом масштабе".

Установите четкие цели развертывания в компании

Чтобы создать основу для направления развертывания, определите цели для GHAS в вашей компании и сообщите эти цели вашей команде. Цели могут быть простыми или сложными, если ваша команда слажена. Если вам требуется помощь в постановке целей, специалисты GitHub Expert Services дадут вам рекомендации, основанные на нашем опыте работы с вашей компанией и другими клиентами.

Вот несколько общих целей развертывания GHAS, которые вы можете использовать как примеры.

  • Сокращение количества уязвимостей. Эта цель может быть универсальной или может быть связана с недавним инцидентом, который, как вам кажется, ваша компания могла бы предотвратить с помощью GHAS.
  • Определение репозиториев с высоким риском. Иногда требуется просто определить репозитории, которые наиболее подвержены рискам, чтобы устранить уязвимости и тем самым снизить риски.
  • Увеличение частоты исправления. Чтобы предотвратить накопление проблем безопасности, можно стимулировать разработчиков принимать результаты и обеспечивать своевременное исправление этих уязвимостей.
  • Соблюдение нормативных требований. Например, многие медицинские компании используют GHAS, чтобы предотвратить раскрытие персональных медицинских данных пациентов.
  • Предотвращение утечки секретов. Многие компании хотят предотвратить утечку конфиденциальных данных, таких как ключи программного обеспечения и финансовые данные.

Выполняйте развертывание совместно с группами по безопасности и разработке

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

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

Участие групп разработки на раннем этапе, в идеале с момента покупки, помогает компаниям использовать GHAS для решения проблем безопасности еще в процессе разработки. Когда обе группы работают вместе, они достигают согласованности на ранних этапах процесса, устраняют недопонимание, строят и укрепляют свои рабочие отношения, а также несут большую ответственность за развертывание.

Сведения о GHAS

Чтобы сформировать реалистичные ожидания от развертывания, убедитесь, что все заинтересованные стороны понимают следующие ключевые факты о работе GHAS.

1. GHAS — это набор средств безопасности, которые требуют активных действий для защиты кода

Ценность GHAS повышается, лишь когда эти средства настраиваются, обслуживаются и используются в ежедневных рабочих процессах наряду с другими инструментами.

2. GHAS требует корректировки после развертывания

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

3. Средства GHAS наиболее эффективны при совместном использовании и интеграции в программу безопасности приложений

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

4. Некоторые компании используют пользовательские запросы CodeQL для настройки и нацеливания результатов сканирования

Code scanning работает на CodeQL, самой мощной подсистеме анализа кода в мире. Для многих наших клиентов вполне достаточно базового набора запросов и дополнительных запросов, доступных в сообществе. Однако некоторым компаниям могут потребоваться пользовательские запросы CodeQL для нацеливания на различные результаты или снижения ложноположительных результатов.

Если ваша компания заинтересована в пользовательских запросах CodeQL, мы рекомендуем сначала выполнить развертывание и реализацию GHAS. После этого, когда ваша компания будет готова, GitHub Expert Services поможет изучить ваши требования и убедиться, что вам нужны пользовательские запросы.

5. CodeQL сканирует всю базу кода, а не только изменения, сделанные в запросе на вытягивание

Когда code scanning выполняется из запроса на вытягивание, сканирование будет включать полную базу кода, а не только изменения, внесенные в запрос на вытягивание. Сканирование всей базы кода является важным шагом, чтобы убедиться, что изменения были проверены для всех взаимодействий в базе кода.

В следующей статье этой серии см. раздел "Этап 2. Подготовка к включению в большом масштабе".