如何通过Java安全地连接到数据库?

ar5n3qh5  于 9个月前  发布在  Java
关注(0)|答案(2)|浏览(90)

我希望连接到一个Mysql数据库与Java没有透露密码的任何人可能反编译我的代码?我可以有效地连接到一个数据库,但我的方式将公开显示我的密码在代码中:(并希望只对如何隐藏密码的React.谢谢是提前

nbysray5

nbysray51#

OAuth允许客户端连接,而无需在客户端上存储凭据(广泛用于移动的设备或识别tweitte应用程序)。它还允许从流氓客户端删除访问权限。但我怀疑mysql是否直接支持这一点,所以你必须用某种服务层 Package 你的数据库。OAuth的一个可用imapplementations:
http://code.google.com/p/oauth-signpost/
(IIRC,由Qipe使用)

0yycz8jy

0yycz8jy2#

假设要访问的数据库将在您的机器上,有两件事浮现在脑海中:

  • 设置一个小型的安全REST服务(如图here所示),它将在收到具有特定凭据的特定请求时,将密码传递给您的数据库。然而,如果您的应用程序位于某些企业防火墙之后,这可能会成为一个问题,因为您可能需要添加防火墙例外,这不是所有管理员都热衷的事情。
  • 您可以混合使用CryptographyObfuscation来加密数据库的密码,然后混淆所有代码。

不过需要注意的是,这两种方法中的任何一种都可以被及时破解。这基本上是所有安全相关软件的规则。
如果由我决定,我会使用第一种方法来解决这个问题,并确保经常更改访问服务的凭据。
然而,作为客户端解决方案的一部分使用的数据库包含非常敏感的数据,这些数据符合客户端的利益,不应被篡改,因此客户端很可能不会乱用它,只要系统正常工作,他/她就会很高兴。
另一方面,如果数据库没有部署到你的机器上,那么你就不能做太多的事情。你可以建议服务器存储在一个只能通过内部网访问的远程机器上,但除此之外,我认为你不能做太多的事情。

相关问题