-
Notifications
You must be signed in to change notification settings - Fork 209
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Live sobre Rate Limits #501
Comments
+1 nesse! Acho que todo mundo que sobe app em produção sofre com isso |
É uma excelente sugestão de live, mas me preocupo que a configuração para mitigação de DDoS pode variar dependendo de como você vai subir sua aplicação para produção, então acredito que isso pode complicar um pouco pra escolher um caminho pro roteiro da live.. Se está em produção, então imagino que esteja usando um servidor web / proxy reverso como nginx, traefik ou qualquer outro, então alguns caminhos seriam esses:
Mas independente de que haja um Rate Limiter configurado, na grande maioria das vezes é indispensável usar Cloudflare para servir como escudo para sua aplicação. |
Olá!
Outro dia desenvolvi um app simples com Python e FastAPI, para verificação de cadastro numa base LDAP em que um requisito era ser o mais fácil possível, pensando em usuários com baixíssimo letramento digital.
Minha preocupação foi com algum tipo de ataque de negação de serviço (DDoS) , usar um captcha dificultaria para o usuário.
Numa pesquisa rápida vi que existem bibliotecas como RateLimiter que implementam limites de requisições numa faixa de tempo, pelo mesmo host, bloqueando tentativas muito recorrentes.
Como sou SysAdmin, me questiono se seria a melhor abordagem? De qualquer modo, para implementações simples parece fazer sentido né? Ou mesmo como uma feature do sistema para o usuário poder definir suas políticas de requisição nos endpoints?
No fim, acabei optando em usar o fail2ban, ao qual eu estava mais habituado, mas fica como sugestão para uma live futura, caso não tenha sido apresentado ainda.
Abraço!
The text was updated successfully, but these errors were encountered: