Sobes.tech
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
}