首页 > 解决方案 > Fortify 扫描问题修复 - 未发布的资源:数据库

问题描述

对于下面的行,我该如何避免这个问题

Query query = getSession().createQuery("my sql query");

或者

Session session = getSession();
SQLQuery query = session.createSQLQuery("");

我的 DAO 实现中有几个查询,我无法在每次查询执行后关闭会话(如果我这样做不会造成连接池瓶颈或内存过度使用?)。
但是我需要解决这个问题或提供适当的理由来使它成为一个积极的错误。

请指导

标签: javahibernatefortifyhibernate-session

解决方案


有几个选项:

  1. 您可以在 FPR 报告文件中将这些问题标记为“无问题”,并将未来的扫描合并到基线审计审查中。合并文件中不会再次出现相同的问题。有一些方法可以通过传递原始基线文件(第一次审计审查)从命令行自动合并。
  2. 我认为您还可以在finally块中添加关闭会话语句。这只会在发生异常时执行。

我不认为在这里创建自定义规则会起作用,因为没有污点或会话关闭功能可以检测。


推荐阅读