Come proteggere l'API dagli spam e dalla scansione

1

Sto lavorando all'app mobile e alla sua API che utilizza un token privato per ogni utente per l'autenticazione.

Voglio assicurarmi che nessuno usi impropriamente l'API per eseguire la scansione dei miei dati o per spammare il mio database. Anche se non pubblicherò i loro post fino a quando non ottengono l'approvazione manuale, è ancora lo spam e un mal di testa per i ragazzi della qualità dei dati.

Sto usando RoR e ho pensato di usare Redis per memorizzare un contatore per ogni utente e se ha raggiunto un numero di visite specifico, posso limitare o bloccare le sue richieste, ma mi ci vorrà un'eternità per implementare il logica e mettere un peso per ogni richiesta e un lavoratore per resettare i contatori ogni paio d'ore o ogni giorno.

Naturalmente ho pensato di utilizzare strumenti già pronti come Fail 2 ban o anche AWS WAF perché sto eseguendo l'app su AWS EB . Ma voglio usare user-id come identificatore e non IP perché forse qualcuno userà proxies per eseguire la scansione o lo spam e penso che ci sia un approccio più intelligente invece di quello manuale.

    
posta Morad Edwar 10.04.2018 - 13:55
fonte

0 risposte

Leggi altre domande sui tag