Sobes.tech
Junior — Middle

Que medidas de segurança permitem prevenir injeções SQL numa aplicação web?

sobes.tech IA

Resposta da IA

Para prevenir injeções SQL em aplicações web, são tomadas as seguintes medidas de segurança:

  • Uso de consultas parametrizadas (declarações preparadas), onde os parâmetros são passados separadamente do código SQL.
  • Uso de bibliotecas ORM (Object-Relational Mapping), que escapam automaticamente os dados.
  • Validação e filtragem da entrada do utilizador no lado do servidor.
  • Restrição dos direitos de acesso à base de dados para minimizar os danos em caso de ataque.

Exemplo de uma consulta parametrizada em C# usando 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();
    // processamento do resultado
}