
Migliori pratiche di sicurezza
Helmet, CORS, rate limiting, sanitizzazione degli input, SQL injection, XSS, CSRF
1Che cos'è Helmet nel contesto di NestJS?
Che cos'è Helmet nel contesto di NestJS?
Risposta
Helmet è un middleware che configura automaticamente gli header HTTP di sicurezza per proteggere le applicazioni dalle vulnerabilità comuni. Abilita header come X-Frame-Options, Content-Security-Policy, X-Content-Type-Options per prevenire XSS, clickjacking e MIME sniffing. Helmet è una best practice essenziale in produzione per rafforzare la superficie di sicurezza.
2Qual è il ruolo principale di CORS in un'API?
Qual è il ruolo principale di CORS in un'API?
Risposta
CORS (Cross-Origin Resource Sharing) controlla quali domini esterni possono accedere alle risorse dell'API. Senza la configurazione di CORS, i browser bloccano le richieste provenienti da domini diversi per motivi di sicurezza. Configurare correttamente CORS previene gli errori di accesso mantenendo al contempo la sicurezza. Usa whitelist di origini consentite invece di autorizzare tutti i domini con un wildcard.
3Qual è l'approccio migliore per proteggere un'API dagli attacchi brute force?
Qual è l'approccio migliore per proteggere un'API dagli attacchi brute force?
Risposta
Il rate limiting limita il numero di richieste per IP o utente in un dato periodo, prevenendo gli attacchi brute force automatizzati. Pacchetti come throttler-module in NestJS permettono di configurare facilmente limiti globali o per endpoint. Combina il rate limiting con strategie progressive (blocco temporaneo crescente) e CAPTCHA per gli endpoint sensibili. Il rate limiting protegge anche dagli attacchi denial of service.
Che cos'è un attacco XSS (Cross-Site Scripting)?
Come proteggere un'applicazione NestJS dalle SQL injection?
+22 domande da colloquio
Altri argomenti di colloquio Node.js / NestJS
Fondamenti di Node.js
API Core di Node.js
Programmazione asincrona
Fondamenti di Express.js
Fondamenti di NestJS
Progettazione di API REST
Validazione e DTO
Documentazione API e contratti
Gestione degli errori
Test unitari
Pianificazione delle attività
Moduli e DI di NestJS
Configurazione e gestione degli ambienti
Autenticazione JWT
Autorizzazione e RBAC
Database con TypeORM
Prisma ORM
Middleware e Interceptor
Caricamento file
WebSockets
GraphQL con NestJS
Test end-to-end
Caching con Redis
Code con Bull
DevOps, Logging e CI/CD
Docker e containerizzazione
Microservices
Performance e deployment cloud
Padroneggia Node.js / NestJS per il tuo prossimo colloquio
Accedi a tutte le domande, flashcards, test tecnici, esercizi di code review e simulatori di colloquio.
Inizia gratis