Compartilhar via


Ignorar alertas de verificação de dependência na Segurança Avançada

A verificação de dependências na Segurança Avançada detecta os componentes de código aberto usados no código-fonte e identifica se há alguma vulnerabilidade associada. As vulnerabilidades encontradas de componentes de software livre são sinalizadas como um alerta. Com essa atualização, você pode ignorar alertas de verificação de dependência na Segurança Avançada que você acredita serem um risco falso positivo ou aceitável.

Nos Repositórios do Azure, alteramos o comportamento padrão para remover a permissão "Editar políticas" ao criar um novo branch.

Confira as notas de versão para saber mais sobre esses recursos.

GitHub Advanced Security para Azure DevOps

Azure Boards

Azure Pipelines

Azure Repos

Geral

Dispensas de alertas de verificação de dependências na Segurança Avançada

Agora você pode descartar quaisquer alertas de verificação de dependência que acredite ser um risco falso positivo ou aceitável. Essas são as mesmas opções de dispensa para alertas de varredura secreta e varredura de código na Segurança Avançada que você pode usar atualmente.

Ignorar um alerta de verificação de dependência

Observe que talvez seja necessário executar novamente o pipeline de detecção com a tarefa de verificação de dependência, bem como garantir que você tenha as Advanced Security: dismiss alerts permissões para descartar esses alertas.

Para saber mais sobre dispensas de alerta, consulte Ignorar alertas de verificação de dependência.

Azure Boards

Fizemos uma pequena melhoria para copiar a URL do item de trabalho de várias áreas em Azure Boards. Facilitando a obtenção do link direto para um item de trabalho específico.

Imagem para copiar item de menu de contexto do link na lista de pendências

O link de cópia foi adicionado aos menus de contexto no formulário de item de trabalho, na lista de pendências e na lista de pendências de tarefas.

Observação

Esse recurso só estará disponível com a versão prévia do New Boards Hubs.

Azure Pipelines

As tarefas do Kubernetes agora oferecem suporte ao kubelogin

Atualizamos as tarefas KubernetesManifest@1, HelmDeploy@0, Kubernetes@1 e AzureFunctionOnKubernetes@1 para dar suporte ao kubelogin. Isso permite que você direcione o Serviço de Kubernetes do Azure (AKS) configurado com a integração do Azure Active Directory.

O Kubelogin não é pré-instalado em imagens hospedadas. Para garantir que as tarefas mencionadas acima usem kubelogin, instale-o inserindo a tarefa KubeloginInstaller@0 antes da tarefa que depende dela:

 - task: KubeloginInstaller@0

 - task: HelmDeploy@0
   # arguments do not need to be modified to use kubelogin

Melhorias na API REST de aprovações

As aprovações aumentam a segurança do pipeline YAML, dando a você a possibilidade de revisar manualmente uma implantação na produção. Atualizamos a API REST da Consulta de Aprovações para torná-la mais poderosa. Agora, você:

  • Não é necessário especificar uma lista de approvalIds. Todos os parâmetros agora são opcionais.
  • Pode especificar uma lista de userIds para recuperar a lista de aprovações pendentes nesses usuários. Atualmente, a API REST retorna a lista de aprovações para as quais os usuários são explicitamente atribuídos como aprovadores.
  • Pode especificar as state aprovações a serem devolvidas, por exemplo, pending.

Aqui está um exemplo: GET https://dev.azure.com/fabrikamfiber/fabrikam-chat/_apis/pipelines/approvals?api-version=7.1-preview.1&userId=00aa00aa-bb11-cc22-dd33-44ee44ee44ee&state=pending retorna

{
    "count": 2,
    "value":
    [
        {
            "id": "87436c03-69a3-42c7-b5c2-6abfe049ee4c",
            "steps": [],
            "status": "pending",
            "createdOn": "2023-06-27T13:58:07.417Z",
            "lastModifiedOn": "2023-06-27T13:58:07.4164237Z",
            "executionOrder": "anyOrder",
            "minRequiredApprovers": 1,
            "blockedApprovers": [],
            "_links":
            {
                "self":
                {
                    "href": "https://dev.azure.com/fabrikamfiber/fabricam-chat/_apis/pipelines/approvals/87436c03-69a3-42c7-b5c2-6abfe049ee4c"
                }
            }
        },
        {
            "id": "2549baca-104c-4a6f-b05f-bdc4065a53b7",
            "steps": [],
            "status": "pending",
            "createdOn": "2023-06-27T13:58:07.417Z",
            "lastModifiedOn": "2023-06-27T13:58:07.4164237Z",
            "executionOrder": "anyOrder",
            "minRequiredApprovers": 1,
            "blockedApprovers": [],
            "_links":
            {
                "self":
                {
                    "href": "https://dev.azure.com/fabrikamfiber/fabricam-chat/_apis/pipelines/approvals/2549baca-104c-4a6f-b05f-bdc4065a53b7"
                }
            }
        }
    ]
}

Desabilitar uma verificação

Tornamos as verificações de depuração menos tediosas. Às vezes, uma verificação Invocar Função do Azure ou Invocar API REST não funciona corretamente e você precisa corrigi-la. Anteriormente, você precisava excluir essas verificações, para evitar que elas bloqueassem erroneamente uma implantação. Depois de corrigir a verificação, você teve que adicioná-la novamente e configurá-la corretamente, certificando-se de que todos os cabeçalhos necessários estejam definidos ou que os parâmetros de consulta estejam corretos. Isso é tedioso.

Agora, você pode simplesmente desativar uma verificação. A verificação desabilitada não será executada em avaliações subsequentes do conjunto de verificações.

Desative uma imagem de verificação.

Depois de corrigir a verificação incorreta, você pode simplesmente ativá-la.

Habilite uma imagem de verificação.

Atualizações nas agendas cron YAML

Em pipelines YAML, você pode definir gatilhos agendados usando a cron propriedade YAML.

Atualizamos como a propriedade batch funciona. Resumindo, se você definir batch como true, o cronograma cron não será executado se outra execução de pipeline agendada estiver em andamento. Isso ocorrerá independentemente da versão do repositório de pipeline.

A tabela a seguir descreve como interação always e batch.

Sempre Lote Comportamento
false false O pipeline será executado somente se houver uma alteração em relação à última execução de pipeline agendada bem-sucedida
false true O pipeline será executado somente se houver uma alteração em relação à última execução de pipeline agendada bem-sucedida e não houver nenhuma execução de pipeline agendada em andamento
true false O pipeline é executado de acordo com o cronograma cron
true true O pipeline é executado de acordo com o cronograma cron

Por exemplo, suponha always: false e batch: true. Suponha que haja um cronograma cron que especifique que o pipeline deve ser executado a cada 5 minutos. Imagine que há um novo commit. Em 5 minutos, o pipeline inicia sua execução agendada. Imagine que uma execução de pipeline leve 30 minutos para ser concluída. Nesses 30 minutos, nenhuma execução agendada ocorre, independentemente do número de confirmações. A próxima execução agendada ocorre somente após o término da execução agendada atual.

Seu pipeline YAML pode conter vários agendamentos cron e você pode querer que seu pipeline execute diferentes estágios/trabalhos com base em qual agendamento cron é executado. Por exemplo, você tem uma compilação noturna e uma compilação semanal e deseja que, durante a compilação semanal, seu pipeline colete mais estatísticas.

Tornamos isso possível introduzindo uma nova variável de sistema predefinida chamada Build.CronSchedule.DisplayName que contém a displayName propriedade de um cronograma cron.

Novas alternâncias para controlar a criação de pipelines clássicos

No ano passado, lançamos uma definição de configuração do Pipelines para desabilitar a criação de pipelines clássicos de build e lançamento.

Em resposta aos seus comentários, dividimos a alternância inicial em duas: uma para pipelines de build clássicos e outra para pipelines de lançamento clássicos, grupos de implantação e grupos de tarefas.

Desabilitar a criação

Se sua organização tiver a Disable creation of classic build and release pipelines alternância ativada, ambas as novas alternâncias estarão ativadas. Se a alternância original estiver desativada, ambas as novas alternâncias estarão desativadas.

Azure Repos

Removendo a permissão "Editar políticas" para o criador da ramificação

Anteriormente, quando você criava um novo branch, recebia permissão para editar políticas nesse branch. Com esta atualização, estamos alterando o comportamento padrão para não conceder essa permissão, mesmo que a configuração "Gerenciamento de permissões" esteja ativada para o repositório.

Imagem de gerenciamento de permissões.

Você precisará da permissão "Editar políticas" concedida explicitamente (manualmente ou por meio da API REST) por herança de permissão de segurança ou por meio de associação de grupo.

Próximas etapas

Observação

Esses recursos serão lançados nas próximas duas a três semanas.

Vá até o Azure DevOps e dê uma olhada.

Como fornecer comentários

Adoraríamos ouvir o que você pensa sobre esses recursos. Use o menu de ajuda para relatar um problema ou fornecer uma sugestão.

Fazer uma sugestão

Você também pode obter conselhos e suas perguntas respondidas pela comunidade no Stack Overflow.

Obrigada,

Silviu Andrica