Junior — Middle
In che modo si può proteggere un'API da accessi non autorizzati e attacchi?
sobes.tech AI
Risposta dell'AI
Per proteggere l'API da accessi non autorizzati e attacchi, vengono applicati i seguenti metodi:
- Autenticazione e autorizzazione: Uso di token (JWT, OAuth), chiavi API, Basic Auth per verificare i diritti dell'utente.
- Crittografia: Trasmissione dei dati tramite HTTPS per protezione da intercettazioni.
- Limitazione del numero di richieste (Rate Limiting): Prevenzione di attacchi DDoS e abusi.
- Validazione e filtraggio dei dati in ingresso: Protezione da injection SQL, XSS e altri attacchi.
- Registrazione e monitoraggio: Monitoraggio di attività sospette.
- Utilizzo di CORS: Controllo dell'accesso da diversi domini.
- Protezione da CSRF: Uso di token o altri meccanismi.
Esempio di autenticazione semplice con chiave API in Go:
func apiHandler(w http.ResponseWriter, r *http.Request) {
apiKey := r.Header.Get("X-API-Key")
if apiKey != "expected_api_key" {
http.Error(w, "Unauthorized", http.StatusUnauthorized)
return
}
// Gestione della richiesta
}