GitHub Actions permite restringir acesso ao cache por job
Publicado 11 de set. de 2026 · Leitura 1 min de leitura · Relevância 8.7
O cache-mode aplica leitura, escrita, somente escrita ou bloqueio total por workflow ou job. A política é imposta pelo serviço e vale em todos os planos.
Cache poisoning pode transformar uma execução não confiável em comprometimento de builds posteriores. O controle por job permite aplicar menor privilégio sem remover cache de todo o pipeline e mantém a restrição através de workflows reutilizáveis.
O GitHub Actions tornou o cache-mode geralmente disponível em todos os planos. A configuração define acesso ao cache no nível do workflow ou do job, com quatro modos: leitura, escrita, somente escrita e nenhum acesso.
Eventos de menor confiança, como pull_request_target, recebem leitura como padrão, enquanto eventos confiáveis, como push, mantêm leitura e escrita. Uma regra no job sobrescreve a do workflow, e um workflow reutilizável não pode receber mais acesso do que o chamador concedeu.
A política é aplicada pelo serviço de cache, não apenas pela action usada no workflow. Isso reduz o risco de um fluxo menos confiável gravar conteúdo que depois será restaurado por uma execução privilegiada.
É possível declarar escrita em eventos de baixa confiança, mas o GitHub mostra um aviso porque essa escolha aumenta o risco de envenenamento de cache. Workflows sem cache-mode continuam com os padrões seguros existentes.
Revisar workflows com pull_request_target, verificar jobs que realmente precisam gravar cache, monitorar avisos de escrita em eventos não confiáveis e acompanhar suporte das actions de cache à nova política.