Política de segurança
As políticas abaixo valem para todos os projetos da organização oxc-project.
Avise @boshen se notar alguma falha.
https://www.npmjs.com/~boshen e https://crates.io/users/Boshen são as únicas contas com permissão de publicação nos nossos pacotes e crates.
github.com
- Autenticação em dois fatores obrigatória para todos na organização
- Só métodos 2FA considerados seguros
- GitHub Security Scanning ativado, inclusive secret scanning
- GitHub Actions: todas as actions fixadas em SHA completo de commit
- Imutabilidade de releases ativada — assets e tags não podem ser alterados após publicar
- Commits assinados obrigatórios: https://docs.github.com/en/authentication/managing-commit-signature-verification/signing-commits
- Não aplicamos isso nas configurações do repositório para não bloquear contribuidores externos
- Tokens de longa duração não são guardados para publish — veja trusted publishing em npmjs.com e crates.io abaixo
- Renovate Bot ativado para atualizações de segurança
- Uso de https://docs.zizmor.sh para lintar GitHub Actions contra problemas comuns de segurança
npmjs.com
- 2FA obrigatória no login
- Publicação com
npm publish --provenance: https://docs.npmjs.com/generating-provenance-statements - Publicação com trusted publishing: https://docs.npmjs.com/trusted-publishers
- Socket Security instalado
- Renovate Bot com
"minimumReleaseAge": "3 days"para evitar atualizar pacotes lançados há menos de 3 dias - Uso de pnpm: https://pnpm.io/supply-chain-security
- Sem scripts
postinstallautomáticos
- Sem scripts
crates.io
- Publicação com trusted publishing: https://crates.io/docs/trusted-publishing
- Uso de
cargo denypara checar dependências contra o advisory database do Rust (https://rustsec.org).