Partilhar via


Solução de problemas de verificação de dependência

Saiba como solucionar problemas de verificação de dependência no GitHub Advanced Security for Azure DevOps.

Verificação de dependência não identificando nenhum componente

Se a tarefa de verificação de dependência estiver sendo concluída sem sinalizar nenhum componente e sem gerar alertas para componentes com vulnerabilidades conhecidas, certifique-se de ter uma etapa de restauração de pacote antes da AdvancedSecurity-Dependency-Scanning@1 tarefa.

Por exemplo, para um projeto C# (.NET Core), aqui está um trecho YAML de exemplo:

- task: DotNetCoreCLI@2
  displayName: 'Restore NuGet packages'
  inputs:
    command: 'restore'
    projects: '**/*.csproj'

    # If you are using a private package feed such as Azure Artifacts, you will need additional variables.
    # For more information, see https://learn.microsoft.com/en-us/azure/devops/pipelines/tasks/reference/dotnet-core-cli-v2?view=azure-pipelines 
    feedsToUse: 'select'
    ...

- task: AdvancedSecurity-Dependency-Scanning@1

Para um projeto JavaScript, aqui está um trecho YAML de exemplo:

- task: Npm@1
  displayName: 'npm install'
  inputs:
    command: 'install'
    workingDir: '$(System.DefaultWorkingDirectory)'

- task: AdvancedSecurity-Dependency-Scanning@1

Tempo limite da tarefa de verificação de dependência

O tempo padrão em que a tarefa de verificação de dependência é executada antes do tempo limite é de 300 segundos ou 5 minutos. Se a tarefa estiver expirando antes da conclusão, você poderá definir uma variável DependencyScanning.Timeoutde pipeline , que espera um inteiro representando segundos, como DependencyScanning.Timeout: 600. Qualquer coisa abaixo do tempo limite padrão de 300 segundos não tem efeito.

Para usar essa variável, adicione DependencyScanning.Timeout como uma variável de pipeline:

- task: AdvancedSecurity-Dependency-Scanning@1
  env:
    DependencyScanning.Timeout: 600

Cenário de quebra-vidro para tarefa de construção

Se a tarefa de compilação de verificação de dependência estiver bloqueando uma execução bem-sucedida do pipeline e você precisar ignorar urgentemente a tarefa de compilação, poderá definir uma variável DependencyScanning.Skip: truede pipeline .

Permissões de tarefas de verificação de dependência

A tarefa de compilação de verificação de dependência usa a identidade do pipeline para chamar as APIs REST de Segurança Avançada. Por padrão, pipelines no mesmo projeto têm acesso para buscar alertas. Se você remover essas permissões da conta de serviço de compilação ou se tiver uma configuração personalizada (por exemplo, um pipeline hospedado em um projeto diferente do repositório), deverá conceder essas permissões manualmente.

Conceda Advanced Security: View Alerts permissão à conta de serviço de compilação usada em seu pipeline, que para pipelines com escopo de projeto é [Project Name] Build Service ([Organization Name]), e para pipelines com escopo de coleta é Project Collection Build Service ([Organization Name]).