如何从.jar隐藏SQL身份验证?

时间:2013-12-02 16:16:09

标签: java

我有一个应用程序,所有sql完成客户端,所以用户名和密码以及所有查询都存储在应用程序中。

  1. 这是执行此操作的方式还是仅由服务器端脚本完成查询?如果是这样的话?

  2. 如果不是这样,我如何从.jar文件中隐藏我的sql详细信息?(原文中不是这样)

  3. 谢谢!

1 个答案:

答案 0 :(得分:2)

选项(2)基本上是不可能的。如果您在客户端的JVM中创建查询并通过网络触发这些请求,攻击者将始终能够通过创建其JVM堆的转储来跟踪这些查询,其中这些查询可能存储为{{1}或者通过拦截网络通信。因此,即使您将查询存储在加密文件中,解密这些查询的所有信息也必须随应用程序一起发送,最终可由攻击者解决。

因此,我建议你建立一个合适的后端。使用诸如JAX-RS之类的Web服务,不要发送查询。 (这允许您将有效通信限制为指定数量的保存交互,而在允许用户发送SQL时基本上可以执行任何操作。)