Este repositório é um template para projetos Terraform, com foco em segurança desde o início. Ele integra práticas, ferramentas e automações para garantir a proteção do código, infraestrutura e cadeia de dependências.
- Pipeline CI/CD seguro com validações automáticas
- Análise de segurança de código e dependências
- Política de permissões mínimas no GitHub Actions
- Pronto para uso em novos projetos Terraform
- Arquivo:
.github/workflows/terraform.yml
- Função: Formata, valida e executa testes em código Terraform a cada push ou pull request.
- Segurança: Utiliza o bloco
permissions
para garantir acesso mínimo (contents: read
).
- Arquivo:
.github/workflows/checkov.yml
- Função: Executa o Checkov para análise estática de segurança em código IaC (Infrastructure as Code), gerando relatórios SARIF.
- Segurança: Detecta más práticas, configurações inseguras e vulnerabilidades em arquivos Terraform.
- Arquivo:
.github/workflows/trivy.yml
- Função: Gera SBOM (Software Bill of Materials) e faz varredura de vulnerabilidades em dependências e imagens, integrando resultados ao GitHub Dependency Graph.
- Segurança: Ajuda a identificar componentes vulneráveis presentes no projeto.
- Arquivo:
.github/workflows/scorecard.yml
- Função: Usa o OSSF Scorecard para avaliar práticas de segurança da cadeia de suprimentos do repositório.
- Segurança: Analisa branch protection, dependabot, workflows, tokens, entre outros.
- Arquivo:
.github/workflows/osv-scanner.yml
- Função: Executa o OSV-Scanner para identificar vulnerabilidades conhecidas em dependências.
- Segurança: Automatiza a checagem contínua de vulnerabilidades em bibliotecas e módulos.
- Arquivo:
.github/workflows/dependency-review.yml
- Função: Bloqueia PRs que introduzem dependências vulneráveis conhecidas, usando o GitHub Dependency Review Action.
- Segurança: Garante que novas dependências estejam livres de vulnerabilidades conhecidas.
- Arquivo: (não incluído por padrão)
- Função: Executa análise estática de segurança aprofundada com CodeQL para identificar vulnerabilidades no código.
- Segurança: Detecta padrões de código problemáticos que podem levar a vulnerabilidades, com base em queries mantidas pela comunidade e pelo GitHub.
- Observação: O uso do CodeQL é recomendado e está documentado em SECURITY.md, mas o workflow não está incluído por padrão neste template. Para habilitar, utilize a opção "Configure CodeQL" na aba "Security" do GitHub ou adicione manualmente o workflow sugerido pela plataforma.
- Dependabot: Atualizações automáticas de dependências.
- Política de Segurança: Veja SECURITY.md para detalhes sobre reporte de vulnerabilidades e práticas adotadas.
- Code of Conduct: Ambiente colaborativo e respeitoso (CODE_OF_CONDUCT.md).
- Clique em
Use this template
no GitHub. - Siga as instruções para criar seu novo repositório.
- Adapte os workflows conforme as necessidades do seu projeto.
Para dúvidas ou reporte de vulnerabilidades, consulte o SECURITY.md.
Feito com ❤️ por Natália Granato.