2012-09-30 96 views
2

我需要确保将在用户机器(应用程序和数据库)中运行的软件中的数据安全性(无需读取或写入)。为数据库访问保证凭证

我知道确实存储硬编码的数据库凭据不是很好,但在这种情况下,似乎我缺少其他选择。 如果我无法避免这种情况,PostgreSQL会保持访问日志不受用户修改的影响吗?

避免用户访问存储在自己机器中的数据库的最佳方法是什么?

+1

他们会在本地机器上使用Postgres的完整版本吗?看起来,如果你需要保护访问,像H2这样的嵌入式数据库 - 你可以在那里加密数据文件可能是好的。使用像postgres这样的数据库服务器 - 如果用户在他们的机器上拥有root访问权限,那么他们可以通过对PG_HBA.CONF文件的一些快速修改进入数据库。 – jcern

+0

你想保护数据或证书? –

+0

@NeilMcGuigan最终目标是保护数据,因此硬编码的凭证是一个主要问题。 –

回答

2

我很确定他们总是可以在自己的机器上访问数据库。即使他们不知道密码,他们也可以根植并改变它。

为什么不加密数据呢?

用您的公钥加密它。把你的公钥放在他们的机器上。

发送数据到您自己的服务器。用你的私钥解密它。

+0

不错,但它是一个离线解决方案。我无法强制用户在运行环境中启用互联网连接 –