04

Seguranca e Boas Praticas

O que nunca commitar, como proteger chaves e o que fazer se algo vazar.

O Nomics Hub lida com tokens que dao acesso a contas de anuncios, automacoes e servicos pagos. Um vazamento pode significar acesso nao autorizado a campanhas, consumo de creditos ou exposicao de dados. As regras abaixo sao inegociaveis.

Regra numero 1

Nunca, em hipotese alguma, faca commit de arquivos que contenham chaves de API, tokens ou credenciais. O .gitignore ja esta configurado para bloquear esses arquivos, mas erros acontecem. Sempre verifique antes de dar push.

Arquivos que NUNCA devem ir para o repositorio

.envSensivel

Contem

Todas as chaves de API, tokens e credenciais

Se vazar

Acesso total a contas de anuncios, automacoes, servicos pagos

.claude/settings.jsonSensivel

Contem

Tokens de MCPs e configuracoes sensiveis

Se vazar

Acesso aos MCPs e servicos conectados

credentials.jsonSensivel

Contem

Credenciais OAuth do Google (Drive, Sheets)

Se vazar

Acesso ao Google Drive e outros servicos Google

token.jsonSensivel

Contem

Token OAuth ativo do Google

Se vazar

Acesso imediato ao Google Drive sem re-autenticacao

.aios/Sensivel

Contem

Runtime do sistema com gotchas e tracking

Se vazar

Dados internos do sistema e historico de erros

venv/Sensivel

Contem

Ambientes virtuais Python (pesados, ~200MB cada)

Se vazar

Nao e risco de seguranca, mas polui o repo desnecessariamente

node_modules/Sensivel

Contem

Dependencias Node.js

Se vazar

Mesmo caso do venv — pesado e desnecessario no repo

O .gitignore ja protege

O repositorio ja vem com um .gitignore configurado que bloqueia todos os arquivos sensiveis. Use esses comandos para verificar se esta tudo correto:

Verificar .gitignore
# Verificar se .env esta no .gitignore
grep ".env" .gitignore

# Verificar se settings.json esta no .gitignore
grep "settings.json" .gitignore

# Listar arquivos que estao sendo rastreados pelo git
git ls-files | grep -E "(.env|settings.json|credentials|token.json)"

Rotacao de tokens

Token

Frequencia

Onde renovar

Sinal de expiracao

META_ADS_ACCESS_TOKEN

A cada 60 dias

developers.facebook.com/tools/explorer/

Se o MCP meta-ads parar de funcionar, provavelmente o token expirou.

Demais tokens

Nao expiram

Respectivos dashboards

Mesmo que nao expirem, e boa pratica rotacionar a cada 6 meses.

Como verificar se algo vazou

Se voce suspeita que um arquivo sensivel foi commitado por engano, use esses comandos para investigar:

Verificar vazamentos no historico git
# Verificar se algum arquivo sensivel ja foi commitado
git log --all --diff-filter=A -- "*.env" ".env" "settings.json" "credentials.json" "token.json"

# Se encontrou algo, remover do historico (CUIDADO: reescreve o historico)
# git filter-branch --force --index-filter \
#   'git rm --cached --ignore-unmatch .env' \
#   --prune-empty --tag-name-filter cat -- --all

Se um token vazou

Se voce descobrir que um token foi commitado e enviado ao GitHub, mesmo que por um segundo: revogue o token imediatamente no servico correspondente e gere um novo. Apagar do historico git nao e suficiente — bots escaneiam repositorios em tempo real.

Boas praticas resumidas

Sempre verifique git status antes de commit — nenhum arquivo sensivel deve aparecer

Use .env.example como template publico (sem valores reais)

Rotacione o token do Meta Ads a cada 60 dias

Nunca compartilhe o .env por mensagem, email ou chat

Se alguem novo entrar na equipe, crie chaves individuais

Revogue tokens de pessoas que sairam da equipe imediatamente