Что такое наборы запросов?
Наборы запросов позволяют передавать несколько запросов CodeQL без необходимости указывать путь к каждому файлу запроса по отдельности. Они предоставляют способ выбора запросов на основе их имени файла, свойств метаданных или расположения на диске или в пакете CodeQL .
Следует использовать наборы запросов для запросов, которые вы хотите часто использовать в CodeQL анализе. Вы можете использовать встроенный набор запросов, доступный или GitHubсоздать собственный.
Встроенные CodeQL наборы запросов
Встроенные CodeQL наборы default запросов и security-extendedсоздаются и поддерживаются GitHub. Оба этих набора запросов доступны с настройкой по умолчанию для каждого CodeQLподдерживаемого языка.
Владельцы организаций и менеджеры по безопасности могут рекомендовать набор запросов для использования с настройками по умолчанию по всей организации. Дополнительные сведения см. в разделе Настройка настройки по умолчанию для сканирования кода в масштабе.
Полный список запросов, включённых в каждый набор запросов для каждого языка, см. Запросы для анализа CodeQL.
default набор запросов
- Набор
defaultзапросов — это группа запросов, выполняемых по умолчанию.CodeQLcode scanningGitHub - Запросы в наборе
defaultзапросов являются высоко точными и возвращают несколько ложных положительных code scanning результатов. По сравнению с наборомsecurity-extended``defaultзапросов набор возвращает меньше результатов низкой достоверности code scanning . - Этот набор запросов доступен для использования с настройкой по умолчанию.code scanning
security-extended набор запросов
- Набор
security-extendedзапросов состоит из всех запросов вdefaultнаборе запросов, а также дополнительных запросов с немного меньшей точностью и серьезностью. - По отношению к набору
default``security-extendedзапросов набор может возвращать большее количество ложных положительных code scanning результатов. - Этот набор запросов доступен для использования с настройкой code scanningпо умолчанию и называется расширенным набором GitHubзапросов.
Пользовательские наборы запросов
Чтобы использовать пользовательский набор запросов, необходимо настроить расширенную настройку для CodeQLcode scanning. Дополнительные сведения см. в разделе Настройка расширенной настройки для сканирования кода.
Определения набора запросов хранятся в файлах YAML с расширением .qls. Определение набора — это последовательность инструкций, в которой каждая инструкция является сопоставлением YAML с (как правило) одним ключом. Инструкции выполняются в том порядке, в котором они отображаются в определении набора запросов. У результате выполнения всех инструкций в определении набора будет создан набор выбранных запросов. Дополнительные сведения см. в разделе Создание наборов запросов CodeQL.