如何使用java applet安全地与数据库通信

我用PHPPHP中写了很长时间的Web应用程序.我总是将我的数据库连接信息存储到配置变量中并以这种方式连接到数据库.

客户希望他们网站的Java applet与他们的数据库进行通信.我对此非常犹豫,因为applet将公开,我不确定如何存储数据库连接信息.

我有点偏执,有人会反编译我的应用程序或找到一些方法来提取我的数据库连接信息并恶意使用它.

有关如何安全地执行此操作的任何建议?

解决方法:

只是为了澄清一下,你并不太担心连接被“无意中听到”,你担心有人可能会破解你的applet并拔出数据库连接细节,对吧?

好吧,我可能不会让它直接连接,而是让它与一个以JSON / XML返回数据的网络应用程序交谈.人们仍然可以从你的applet中获取它,如果他们真的想要,但他们只限于web-app可以.

如果这不会漂浮您的船,请确保applet使用的数据库用户仅限于执行它所需的操作.如果它只是提取数据,请不要给它插入权限.

如果您只是在进行写入,则另一种选择是拥有公共数据库和私有数据库.从您的applet写入进入公共数据库并在验证后同步.这样做的问题是你可能会丢失一些内置的检查和关系,除非你保留公共数据库中所有数据的副本 – 这可能不安全.

另一种选择可以是为每个用户提供他们自己的数据库用户.然后,如果有人未经授权获得applet,他们仍然需要一个帐户才能进入.

我认为建立一个中间网络应用程序可能是你最好的选择,但我不知道完整的情况,所以我不是最好的判断.

上一篇:AtCoder Beginner Contest 191


下一篇:java – 按钮最初不绘制