Junior — Middle
Jak lze chránit API před neoprávněným přístupem a útoky?
sobes.tech AI
Odpověď od AI
Pro ochranu API před neoprávněným přístupem a útoky se používají následující metody:
- Autentizace a autorizace: Použití tokenů (JWT, OAuth), API klíčů, Basic Auth k ověření práv uživatele.
- Šifrování: Přenos dat přes HTTPS k ochraně před zachycením.
- Omezení počtu požadavků (Rate Limiting): Prevence DDoS útoků a zneužívání.
- Validace a filtrování vstupních dat: Ochrana proti SQL injekcím, XSS a dalším útokům.
- Záznam a monitorování: Sledování podezřelé aktivity.
- Použití CORS: Kontrola přístupu z různých domén.
- Ochrana proti CSRF: Použití tokenů nebo jiných mechanismů.
Příklad nejjednodušší autentifikace s použitím API klíče v 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
}
// Zpracování požadavku
}