Sobre a CodeQL CLI
Desenvolvedores de software e pesquisadores de segurança podem proteger o código usando a análise do CodeQL. Para obter mais informações sobre o CodeQL, confira "Sobre a varredura de código com CodeQL".
A CodeQL CLI é uma ferramenta de linha de comando autônoma que você pode usar para analisar o código. Seu principal propósito é gerar uma representação do banco de dados de uma base de código, um banco de dados de CodeQL. Assim que o banco de dados estiver pronto, será possível consultá-lo interativamente ou executar um conjunto de consultas a fim de gerar um conjunto de resultados no formato SARIF e enviá-los ao sua instância do GitHub Enterprise Server.
Você pode usar a CodeQL CLI para:
- Executar análises do CodeQL usando consultas fornecidas por engenheiros do GitHub e pela comunidade de código aberto
- Gerar alertas da verificação de código que você poderá carregar para exibição no GitHub Enterprise Server
- Criar bancos de dados do CodeQL para usá-los no CodeQL para a extensão do Visual Studio Code.
- Desenvolver e testar consultas personalizadas do CodeQL a serem usadas em suas análises
A CodeQL CLI pode analisar:
- Linguagens dinâmicas, por exemplo, JavaScript e Python.
- Linguagens compiladas, por exemplo, C/C++, C#, e Java.
- Bases de código em uma mistura de linguagens.
Para obter mais informações sobre como configurar a CodeQL CLI, confira "Como configurar a CLI do CodeQL".
Para obter informações de como usar a CodeQL CLI em um sistema de CI de terceiros para criar resultados a serem exibidos no GitHub como alertas de verificação de código, confira Como configurar a CodeQL CLI no sistema de CI. Para obter informações sobre como habilitar a verificação de código do CodeQL usando o GitHub Actions, confira "Como definir a verificação de código".
Sobre o uso do CodeQL CLI for code scanning
Você pode usar a CodeQL CLI para executar a code scanning no código que está processando em um sistema de CI (integração contínua) de terceiros. A Code scanning é um recurso que você usa para analisar o código em um repositório GitHub para encontrar vulnerabilidades de segurança e erros de codificação. Quaisquer problemas identificados pela análise são exibidos em GitHub Enterprise Server. Para obter uma visão geral das opções para sistemas de CI, confira "Sobre a varredura de código de CodeQL no seu sistema de CI". Para especificações recomendadas (RAM, núcleos de CPU e disco) para executar análises do CodeQL, confira "Recursos de hardware recomendados para executar o CodeQL".
Como alternativa, você pode usar pipelines do GitHub Actions ou do Azure DevOps para verificar o código usando a CodeQL CLI. Para obter mais informações, confira "Como definir a verificação de código" ou Configurar o GitHub Advanced Security for Azure DevOps in Microsoft Learn.
Para obter uma visão geral de todas as opções para usar a análise do CodeQL para a verificação de código, confira "Sobre a varredura de código com CodeQL".
Observações:
-
O CodeQL CLI está disponível para clientes com uma licença de Advanced Security.
-
Atualmente, o CodeQL CLI não é compatível com distribuições Linux não glibc, como o Alpine Linux (baseado em musl).
Sobre como gerar resultados de varredura de código com CodeQL CLI
Se você optar por executar a CodeQL CLI diretamente, primeiro, precisará instalar a CodeQL CLI localmente. Se você estiver planejando usar a CodeQL CLI com um sistema de CI externo, precisará disponibilizar a CodeQL CLI para os servidores no sistema de CI e garantir que eles possam se autenticar no GitHub Enterprise Server. Para obter mais informações, confira "Como configurar a CLI do CodeQL".
Depois que a CodeQL CLI estiver configurada, você poderá usar três comandos diferentes para gerar os resultados e carregá-los no GitHub Enterprise Server:
database create
para criar um banco de dados do CodeQL a fim de representar a estrutura hierárquica de cada linguagem de programação compatível no repositório. Para obter mais informações, confira "Como preparar seu código para a análise do CodeQL".database analyze
para executar consultas a fim de analisar cada banco de dados do CodeQL e resumir os resultados em um arquivo SARIF. Para obter mais informações, confira "Como analisar o código com as consultas CodeQL".github upload-results
para carregar os arquivos SARIF resultantes no GitHub Enterprise Server, no qual será feita a correspondência dos resultados com um branch ou uma solicitação de pull e no qual eles serão exibidos como alertas da code scanning. Para obter mais informações, confira "Como carregar os resultados da análise do CodeQL no GitHub".
Sobre a licença do GitHub CodeQL
Aviso de licença: se você não tiver uma licença do GitHub Enterprise, baixando este arquivo, você estará concordando com os Termos e condições do GitHub CodeQL.
O GitHub CodeQL é licenciado por usuário. Sob as restrições de licença, você pode usar o CodeQL para executar as seguintes tarefas:
- Realizar pesquisas acadêmicas.
- Demonstrar o software.
- Testar consultas do CodeQL lançadas sob uma licença aprovada pela OSI para confirmar que novas versões dessas consultas continuam a encontrar as vulnerabilidades certas.
Sendo que "Licença aprovada pela OSI" significa uma licença de software de código aberto aprovada pela OSI (Open Source Initiative).
Se você estiver trabalhando com uma base de código Open Source Codebase (ou seja, uma base de código lançada sob uma licença aprovada pela OSI), também poderá usar o CodeQL para as seguintes tarefas:
- Executar a análise da Open Source Codebase.
- Gerar bancos de dados do CodeQL voltados à análise automatizada, integração contínua ou entrega contínua, quando a Open Source Codebase for hospedada e mantida no GitHub.com.
O CodeQL não pode ser usado para análise automatizada, integração contínua ou entrega contínua, seja nos processos normais de engenharia de software ou de outra forma, exceto nos casos expressos estabelecidos aqui. Para esses usos, entre em contato com a equipe de vendas.