Como configurar a GitHub Advanced Security para o Azure DevOps

O GitHub Advanced Security for Azure DevOps adiciona o conjunto de funcionalidades de segurança do GitHub Advanced Security ao Repositórios do Azure e inclui as seguintes funcionalidades:

  • Proteção por push de varredura secreta: verifique se os pushes de código incluem confirmações que expõem segredos, como credenciais
  • Verificação de segredos no repositório: examine o seu repositório e procure por segredos expostos acidentalmente.
  • Varredura de Dependências – pesquisa de vulnerabilidades conhecidas em dependências open source (direta e transitiva)
  • Verificação de código – use o mecanismo de análise estática CodeQL para identificar vulnerabilidades de aplicações a nível de código, como injeção de SQL e bypass à autenticação

Você pode trazer a proteção da Segurança Avançada para sua empresa com a flexibilidade para habilitar o nível certo de proteção para seus repositórios. GitHub Advanced Security for Azure DevOps está disponível como GitHub Secret Protection for Azure DevOps e GitHub Code Security for Azure DevOps.

A Proteção Secreta inclui os seguintes recursos:

  • Proteção push para prevenir vazamentos de segredos antes de acontecerem
  • Alertas de varredura de segredos com notificações, para detectar vulnerabilidades existentes antes que se tornem um problema.
  • Visão geral de segurança, que fornece informações sobre o nível de risco e proteção de segurança da sua organização

O Code Security inclui os seguintes recursos:

  • Alertas de dependência, para encontrar vulnerabilidades em dependências de código aberto
  • Verificação do CodeQL, para detetar vulnerabilidades diretamente no seu código
  • Descobertas de segurança para ferramentas de terceiros
  • Visão geral de segurança, que fornece informações sobre o nível de risco e proteção de segurança da sua organização

O GitHub Advanced Security for Azure DevOps está disponível apenas para Azure DevOps Services e especificamente para repositórios Git de código.

GitHub Advanced Security for Azure DevOps funciona com Repositórios do Azure. Para usar GitHub Segurança Avançada com repositórios GitHub, consulte GitHub Segurança Avançada.

Pré-requisitos

Categoria Requerimentos
Permissões - Para visualizar um resumo de todos os alertas para um repositório: Colaborador permissões para o repositório.
- Para dispensar alertas em Segurança Avançada: permissões de administrador de projeto.
- Para gerir permissões em Advanced Security: Membro do grupo Administradores de Coleções do Projeto ou com a permissão Segurança Avançada: gerir definições definida para Permitir.

Para obter mais informações sobre permissões de Segurança Avançada, consulte Gerenciar permissões de Segurança Avançada.

Pré-requisitos extras para agentes auto-hospedados

Se sua organização usa agentes auto-hospedados, adicione as seguintes URLs à sua Lista de permissões para que a tarefa de verificação de dependência possa buscar dados de aviso de vulnerabilidade. Para obter mais informações, consulte Endereços IP permitidos e URLs de domínio.

URL do domínio Descrição
https://governance.dev.azure.com Para organizações que usam o domínio dev.azure.com para acessar sua instância de DevOps
https://dev.azure.com Para organizações que usam o domínio dev.azure.com para acessar sua instância de DevOps
https://advsec.dev.azure.com Para organizações que usam o domínio dev.azure.com para acessar sua instância de DevOps
https://{organization_name}.governance.visualstudio.com Para organizações que usam o domínio {organization_name}.visualstudio.com para acessar sua instância de DevOps
https://{organization_name}.visualstudio.com  Para organizações que usam o domínio {organization_name}.visualstudio.com para acessar sua instância de DevOps
https://{organization_name}.advsec.visualstudio.com Para organizações que usam o domínio {organization_name}.visualstudio.com para acessar sua instância de DevOps
  • Executa uma versão compatível do runtime .NET. Em abril de 2026, a versão atual continua a ser .NET 8.x. Se não houver uma versão compatível no agente, a tarefa de compilação de varredura de dependências descarrega .NET.

  • Certifique-se de que o pacote CodeQL esteja instalado no cache da ferramenta do agente em seu agente. Você pode utilizar a variável enableAutomaticCodeQLInstall: true com a tarefa de pipeline AdvancedSecurity-Codeql-Init@1 para pipelines YAML ou marcar a caixa de seleção Enable automatic CodeQL detection and installation para pipelines clássicos. Alternativamente, para instruções manuais de instalação, consulte Escaneamento de código para GitHub Segurança Avançada para Azure DevOps.

Ativar a Segurança Avançada do GitHub

Você pode habilitar a Segurança Avançada no nível da organização, projeto ou repositório. Para acessar cada uma das ferramentas de verificação e resultados, você precisa primeiro ativar a Segurança Avançada. Depois de ativar a Segurança Avançada, todos os envios futuros que contenham segredos para um repositório com esta política ativada são bloqueados e a verificação de segredos do repositório acontece em segundo plano.

Integração no nível do repositório

  1. Vá às definições do projeto para o seu projeto Azure DevOps.
  2. Selecione Repos>Repositories.
  3. Selecione o repositório para o qual deseja ativar a Segurança Avançada.
  4. Selecione Ativar e Iniciar a faturação para ativar a Segurança Avançada. Um ícone de escudo agora aparece na visualização do repositório para qualquer repositório com Segurança Avançada ativada.

Captura de ecrã de ativar GitHub Segurança Avançada.

Integração ao nível do projeto

  1. Vá às definições do projeto para o seu projeto Azure DevOps.
  2. Selecione Repos.
  3. Selecione o separador Definições.
  4. Selecione Ativar tudo e verá aparecer uma estimativa do número de committers ativos para o seu projeto. Esta ação só ativa produto para repositórios existentes.
  5. Selecione Iniciar cobrança para ativar a Segurança Avançada para cada repositório existente em seu projeto.
  6. Opcionalmente, selecione Ativar Automaticamente a Segurança Avançada para novos repositórios , para que quaisquer repositórios recém-criados no futuro tenham a Segurança Avançada ativada aquando da criação. Esta configuração é separada da Ativar todas as ações e deve ser selecionada de forma independente.

Captura de tela da ativação no nível do projeto para Segurança Avançada.

Integração ao nível da organização

  1. Vai às definições organização para a tua organização Azure DevOps.
  2. Selecione Repositórios.
  3. Selecione Ativar tudo e veja aparecer uma estimativa para o número de committers ativos da sua organização. Esta ação só ativa produto para repositórios existentes.
  4. Selecione Iniciar cobrança para ativar a Segurança Avançada para cada repositório existente em cada projeto em sua organização.
  5. Opcionalmente, selecione Ativar Automaticamente Segurança Avançada para novos projetos , de modo a que quaisquer projetos recém-criados no futuro tenham a Segurança Avançada ativada aquando da criação. Esta configuração é separada da Ativar todas as ações e deve ser selecionada de forma independente.

Captura de tela da ativação em nível de organização para Segurança Avançada.

Você pode habilitar a Proteção Secreta ou a Segurança de Código no nível da organização, projeto ou repositório.

Integração no nível do repositório

  1. Vá às definições do projeto para o seu projeto Azure DevOps.
  2. Selecione Repos>Repositories.
  3. Selecione o repositório para o qual deseja ativar a Segurança Avançada.
  4. Alterne entre Proteção Secreta ou Segurança de Código.
  5. Selecione Iniciar cobrança. Um ícone de escudo agora aparece na visualização do repositório para qualquer repositório com qualquer produto habilitado.
  6. Para habilitar opcionalmente a configuração padrão da varredura de dependência, selecione Opções e habilite a caixa de seleção Configuração padrão da verificação de dependência.

Captura de ecrã de ativar GitHub Segurança Avançada.

Integração ao nível do projeto

  1. Vá às definições do projeto para o seu projeto Azure DevOps.
  2. Selecione Repos.
  3. Selecione o separador Definições.
  4. Selecione Ativar tudo e veja aparecer uma estimativa do número de committers ativos por produto para o seu projeto. Esta ação só permite o produto selecionado para repositórios existentes.
  5. Desative os produtos desejados de Proteção Secreta ou Segurança de Código e todas as subfuncionalidades associadas.
  6. Selecione Iniciar cobrança para ativar a Proteção Secreta e/ou Segurança de Código para cada repositório existente em seu projeto.
  7. Opcionalmente, ative ou desative Automaticamente ativar a Segurança Avançada para novos repositórios para que quaisquer repositórios novos criados no futuro tenham Proteção de Segredos ou Segurança de Código ativadas aquando da criação. Esta configuração é separada da Ativar todas as ações e deve ser selecionada de forma independente.

Captura de tela da ativação no nível do projeto para Segurança Avançada.

Integração ao nível da organização

  1. Vai às definições organização para a tua organização Azure DevOps.
  2. Selecione Repositórios.
  3. Selecione Ativar tudo e veja aparecer uma estimativa do número de committers ativos por produto para a sua organização. Esta ação só permite o produto selecionado para repositórios existentes.
  4. Desative os produtos desejados de Proteção Secreta ou Segurança de Código e todas as subfuncionalidades associadas.
  5. Selecione Iniciar cobrança para ativar a Segurança Avançada para cada repositório existente em cada projeto em sua organização.
  6. Opcionalmente, ative ou desative ativar automaticamente a Segurança Avançada para novos projetos para que quaisquer projetos criados no futuro tenham Proteção de Segredos ou Segurança do Código ativada na criação. Esta configuração é separada da Ativar todas as ações e deve ser selecionada de forma independente.

Captura de tela da ativação em nível de organização para Segurança Avançada.

Configurar a verificação de segredos

A verificação secreta, a proteção por push e a verificação do repositório são ativadas automaticamente quando você ativa a Segurança Avançada. Você pode ativar ou desativar a proteção secreta por push na página de configurações do repositório.

Captura de ecrã a mostrar a ativação da proteção push.

A verificação secreta do repositório é iniciada automaticamente ao ativar a Segurança Avançada para um repositório selecionado.

A proteção push de varredura secreta e a varredura de repositório são ativadas automaticamente quando você ativa a Proteção Secreta. Você pode ativar ou desativar a proteção secreta por push na página de configurações do repositório.

Captura de ecrã a mostrar a ativação da proteção push.

A varredura de segredos no repositório é automaticamente iniciada ao ativar a Proteção de Segredos para um repositório selecionado.

Configurar a análise de dependências

Para obter acesso aos recursos de verificação de dependência, você precisa do produto Code Security habilitado para seu repositório.

A análise de dependência é uma ferramenta de análise baseada em pipeline. Os resultados são agregados por repositório. Para verificar sua ramificação padrão, você pode utilizar a configuração "Verificar dependências vulneráveis" na página de configurações do repositório. Esta funcionalidade incluirá automaticamente a tarefa de varredura de dependências em qualquer pipeline que vise o seu branch predefinido, ou qualquer build de pull request direcionada ao seu branch predefinido.

Para uma configuração mais avançada ou se você quiser verificar todas as ramificações, recomendamos que você adicione a tarefa de verificação de dependência a todos os pipelines que deseja verificar. Consulte análise de dependências para Segurança Avançada do GitHub para o Azure DevOps para mais detalhes.

Configurar a análise de código

Para obter acesso aos recursos de verificação de código, você precisa do produto Code Security habilitado para seu repositório.

A varredura de código é uma ferramenta de análise baseada em pipeline, onde os resultados são agregados por repositório. Pode configurar a leitura de código adicionando tarefas do CodeQL diretamente ao seu Azure Pipelines.

Para configurar a varredura de código, adicione as seguintes tarefas ao seu pipeline por ordem:

  1. AdvancedSecurity-Codeql-Init@1 — inicializes CodeQL
  2. Os teus passos de construção personalizados (para linguagens compiladas)
  3. AdvancedSecurity-Codeql-Analyze@1 — executa a análise CodeQL

Especifique a linguagem que está a analisar na tarefa Inicialize CodeQL. As linguagens suportadas incluem: csharp, cpp, go, java, javascript, python, ruby, swift.

Gorjeta

Recomendamos adicionar as tarefas de análise de código a um pipeline separado e clonado do seu pipeline de produção principal ou criar um novo pipeline. Para mais detalhes sobre opções de configuração, consulte Configurar a varredura de código.

Configurar anotações de solicitação pull

Para varredura de dependências e análise de código, as anotações configuram-se automaticamente para pull requests onde se aplica uma política de validação de build com tarefas de varredura de dependências e/ou de código incluídas no seu pipeline. Para obter mais informações sobre como configurar políticas de validação de compilação, consulte Validação de compilação.

As anotações de pull request também exigem uma análise de Segurança Avançada no branch padrão e no branch de destino antes de então analisar o branch de origem (pull request). Para obter mais informações sobre como resolver alertas para ramificações de pull request, consulte Gerir alertas de análise de dependências em pull requests e Gerir alertas de análise de código em pull requests.

Para desativar a Segurança Avançada, todos os alertas e estados de alertas são retidos na guia Segurança Avançada para a próxima vez que você reativar a Segurança Avançada para seu repositório.