Outras considerações de segurança
Azure DevOps Services | Azure DevOps Server 2022 | Azure DevOps Server 2020
Há algumas outras coisas que você deve considerar ao proteger pipelines.
Confiar em PATH
Confiar na configuração PATH
do agente é perigoso.
Ela pode não apontar para onde você pensa que ela apontará, uma vez que um script ou ferramenta anterior pode tê-la alterado.
Para scripts e binários críticos de segurança, sempre use um caminho totalmente qualificado para o programa.
Registro em log de segredos
O Azure Pipelines tenta tirar segredos dos logs sempre que possível. Essa filtragem é feita na base do melhor esforço e não pode capturar todas as formas com que os segredos podem ser vazados. Evite ecoar segredos no console, usá-los em parâmetros de linha de comando ou registrá-los em arquivos.
Bloquear contêineres
Os contêineres têm alguns mapeamentos de montagem de volume fornecidos pelo sistema nas tarefas, no workspace e nos componentes externos necessários para se comunicar com o agente de host. Você pode marcar qualquer um ou todos esses volumes somente leitura.
resources:
containers:
- container: example
image: ubuntu:22.04
mountReadOnly:
externals: true
tasks: true
tools: true
work: false # the default; shown here for completeness
A maioria das pessoas deve marcar os três primeiros como somente leitura e deixar work
como leitura-gravação.
Se você souber que não gravará no diretório de trabalho em um determinado trabalho ou etapa, vá em frente e torne work
somente leitura também.
Se você tiver tarefas em seu pipeline, que são auto-modificadas, talvez seja necessário deixar tasks
como leitura/gravação.
Controlar tarefas disponíveis
Você pode desabilitar a capacidade de instalar e executar tarefas do Marketplace. Isso permitirá maior controle sobre o código que é executado em um pipeline. Você também pode desabilitar todas as tarefas integradas (exceto Checkout, que é uma ação especial no agente). Recomendamos que você não desabilite tarefas integradas na maioria das circunstâncias.
As tarefas instaladas diretamente com tfx
estão sempre disponíveis.
Com esses dois recursos habilitados, somente essas tarefas estão disponíveis.
Usar o serviço de Auditoria
Muitos eventos de pipeline são registrados no serviço de auditoria.
Examine o log de auditoria periodicamente para garantir que nenhuma alteração mal-intencionada tenha passado.
Acesse https://dev.azure.com/ORG-NAME/_settings/audit
para começar.
Próximas etapas
Retorne à visão geral e verifique se você abordou todos os artigos.