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
- As tarefas do Kubernetes agora oferecem suporte ao kubelogin
- Atualizações nas agendas cron YAML
- Desabilitar uma verificação
- Melhorias na API REST de aprovações
- Novas alternâncias para controlar a criação de pipelines clássicos
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.
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
Copiar link para o item de trabalho
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.
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
approvalId
s. Todos os parâmetros agora são opcionais. - Pode especificar uma lista de
userId
s 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.
Depois de corrigir a verificação incorreta, você pode simplesmente ativá-la.
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.
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.
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.
Você também pode obter conselhos e suas perguntas respondidas pela comunidade no Stack Overflow.
Obrigada,
Silviu Andrica