セキュリティ問題の監査レポートのコードを修正しています--SQLインジェクション。私のコードでは、次のメソッドを使用してレコードを削除しています。このメソッドは基本クラスで定義され、モジュール内の他のすべてのdaoレベルクラスによって拡張されます。
public void delete(Class objectClass, long objectId)throws DAOException{
try{
getHibernateTemplate().delete(getObject(objectClass,objectId));
}catch(Exception e){
throw new DAOException(e);
}
}
そして、メソッド呼び出しgetHibernateTemplate()。delete(getObject(objectClass、objectId));
SQLインジェクションの傾向があると報告されています。のように報告
「サーブレット要求( "getObject(objectClass、objectId)")から受信したデータのユーザー定義の危険性への注入」。
問題を解決する方法。私は十分な宿題をし、HQLのプリペアドステートメントによってSQLインジェクションの問題をすでに修正しました。
前もって感謝します。