Fortify Scan 问题修复 - 未发布的资源:数据库

Fortify Scan Issue Fix- Unreleased Resource: Database

我怎样才能避免这个问题,对于下面的行

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

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

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

请指导

有几个选项:

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

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