Pular para o conteúdo principal

Boas Práticas de Segurança

Como armazenar os segredos

SegredoRecomendação
API keyCofre de segredos (Azure Key Vault, AWS Secrets Manager, variável de ambiente protegida). Nunca em código-fonte ou arquivos versionados.
Access tokenMemória da aplicação. Nunca em localStorage ou cookies sem atributo HttpOnly.
Refresh tokenArmazenamento seguro e persistente (banco criptografado, keychain do sistema).

O que NÃO fazer

# ❌ Nunca registre tokens em logs
logger.info(f"Token: {access_token}")

# ❌ Nunca envie a API key nas chamadas de negócio
# A API key é usada APENAS em POST /api/external-auth/token
curl /api/external/ping -H "x-api-key: ..." # errado

# ❌ Nunca reutilize um refresh token após chamar /refresh
# O token anterior é invalidado imediatamente — reutilizá-lo encerra toda a sessão

Proteção contra token comprometido

Se um refresh token já utilizado for apresentado novamente à API, toda a sessão ativa é encerrada imediatamente. Para retomar o acesso, utilize a API key em POST /token para iniciar uma nova sessão.

Se suspeitar que sua API key foi comprometida, entre em contato com o time IFW imediatamente.

Validade dos tokens

TokenDuração
Access token (JWT)15 minutos
Refresh token14 dias