独立Java应用程序中的PostgreSQL安全连接

时间:2013-02-04 18:25:10

标签: java security postgresql

我正在创建独立应用程序(基于Swing的GUI)。它将像密码持有者(例如用户指定站点的登录/密码)

它连接到远程psql数据库。与数据库的连接存储在db.properties文件中。

我想要的是什么:

  1. 我怎样才能“隐藏”将取消归档我的.jar包的用户的数据库连接? (在最坏的情况下至少是连接用户的密码)
  2. 有没有办法阻止反编译/调试文件?

1 个答案:

答案 0 :(得分:1)

我建议将数据库凭据存储在环境变量中,并在值中读取源代码。

这可以防止必须将凭据存储在源代码管理或二进制文件中,但允许您轻松提供/更改您的秘密。

这已成为"12 factor apps"中包含的最佳做法,并模拟了Heroku和其他托管服务管理应用程序级配置的方式。