Mir ist schon klar das man SQL Injection am einfachsten verhinden kann durch z.B.
bzw. in Spring
Aber ich suche eine Möglichkeit mit der man in Java (mit oder ohne Spring Framework) mir einen einzelnen Wert vor SQL Injection schützt also in der Form:
angelehnt an Beispiel 1:
angelehnt an Beispiel 2:
Wie könnte man soetwas realisieren? Gibt es evtl. eine solche Funktion schon?
Code:
stmt = conn.prepareStatement("INSERT INTO person (name, email) values (?, ?)");
stmt.setString(1, name);
stmt.setString(2, email);
bzw. in Spring
Code:
getSimpleJdbcTemplate() .update(
"insert into table " +
"(column1, column2, column3, column4, column5) VALUES " +
"(:column1, :column2, :column3, :column4, :column5)",
new MapSqlParameterSource().addValue("column1", value1).
addValue("column2", value2).
addValue("column3", value3).
addValue("column4", value4).
addValue("column5", value5));
Aber ich suche eine Möglichkeit mit der man in Java (mit oder ohne Spring Framework) mir einen einzelnen Wert vor SQL Injection schützt also in der Form:
angelehnt an Beispiel 1:
Code:
String sql = "INSERT INTO person (name, email) values (" +
sqlinjectionsafe(name) + ", " + sqlinjectionsafe(email) + ")");
angelehnt an Beispiel 2:
Code:
String sql = "INSERT INTO person (name, email) values (" +
sqlinjectionsafe(name) + ", " + sqlinjectionsafe(email) + ")");
getSimpleJdbcTemplate().update( sql ); // String sql ist jetzt sql injection sicher
Wie könnte man soetwas realisieren? Gibt es evtl. eine solche Funktion schon?
Zuletzt bearbeitet von einem Moderator: