Junior — Middle
Aké bezpečnostné opatrenia umožňujú zabrániť SQL injekciám v webovej aplikácii?
sobes.tech AI
Odpoveď od AI
Na prevenciu SQL injekcií v webových aplikáciách sa používajú nasledujúce bezpečnostné opatrenia:
- Použitie parametrizovaných dopytov (prepared statements), kde sú parametre odovzdávané oddelene od SQL kódu.
- Použitie ORM (Object-Relational Mapping) knižníc, ktoré automaticky escapujú dáta.
- Validácia a filtrovanie používateľských vstupov na strane servera.
- Obmedzenie práv prístupu k databáze, aby sa minimalizovala škoda pri možnom útoku.
Príklad parametrizovaného dopytu v C# s 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();
// spracovanie výsledku
}