Сонар сообщает "Потенциальная безопасность SQL / JPQL-инъекция для приведенного ниже кода.
@Repository
Class EmployeeData {
@Autowired
EntityManager em;
@value($ {"emp.detail.query"})
String query;
public List < Employee > getEmpData() {
Query query = em.createNativeQuery(query).setParameter("id", 123);
return query.getResultList();
}
}
Я читаю запрос из файла application.properties, и этот запрос является комбинацией нескольких подзапросов, поэтому я не могу перейти к построителю критериев.
Когда я перемещаю этот запрос в какой-то постоянный файл, сонар не сообщает о проблеме.
Любая идея, почему сонар сообщает об этой уязвимости, когда я читаю этот запрос из application.properties.