Individual — responda por escrito
1. Para cada situação abaixo, identifique em qual ambiente ela acontece (dev, homologação ou produção):
2. Por que o arquivo .env nunca deve ser enviado para o Git?
3. Complete a tabela com as diferenças entre os ambientes:
| Dev | Homologação | Produção | |
|---|---|---|---|
| Quem usa | |||
| Tipo de dados | |||
| Erros são... | |||
| Acesso |
4. Verdadeiro ou falso — justifique as falsas:
NODE_ENV=production pode mudar o comportamento do sistema automaticamente.5. Leia os três cenários abaixo e identifique qual regra de segurança foi violada em cada um:
const db = new Pool({ password: 'senha123' }) e fez commit no GitHub.6. No pgAdmin 4, ao criar uma Role para a aplicação, quais opções da aba Privileges devem ficar desmarcadas? Por quê cada uma delas seria perigosa se estivesse ativada?
| Privilege | Por que não ativar em produção |
|---|---|
| Superuser | |
| Create roles | |
| Create databases | |
| Login | (esta deve ficar ativada — explique por quê) |
7. Um colega seu diz: "Manter três ambientes separados é perda de tempo — dá muito trabalho e no final o sistema vai funcionar igual nos três." Escreva um argumento com pelo menos 3 pontos concretos para convencê-lo do contrário.
8. Observe o .env abaixo e identifique pelo menos 3 problemas de segurança ou configuração:
DB_HOST=localhost
DB_PORT=5432
DB_NAME=chapecoense
DB_USER=postgres
DB_PASS=123
NODE_ENV=development
JWT_SECRET=abc
PORT=3000