Junior — Middle
Quali misure di sicurezza consentono di prevenire le injection SQL in un'applicazione web?
sobes.tech AI
Risposta dell'AI
Per prevenire le injection SQL nelle applicazioni web, vengono adottate le seguenti misure di sicurezza:
- Utilizzo di query parametrizzate (istruzioni preparate), in cui i parametri vengono passati separatamente dal codice SQL.
- Uso di librerie ORM (Object-Relational Mapping), che eseguono automaticamente l'escape dei dati.
- Validazione e filtraggio dell'input utente lato server.
- Limitazione dei permessi di accesso al database per minimizzare i danni in caso di attacco.
Esempio di query parametrizzata in C# con ADO.NET:
using (var connection = new SqlConnection(connectionString))
{
connection.Open();
var command = new SqlCommand("SELECT * FROM Users WHERE Username = @username", connection);
command.Parameters.AddWithValue("@username", inputUsername);
var reader = command.ExecuteReader();
// elaborazione del risultato
}