2017-01-02 71 views
0

我已经使用从DB包含密码的.properties数据的应用程序,这个应用程序将被我的客户使用,但我不希望任何形式的访问给他这个属性使用文件数据数据,即使我们查看.jar​​也不行。我想使用zip4j,但有没有其他的最佳解决方案,因为当我解压缩.properties将被解压缩到某个地方给客户端访问它不?不给其他人的允许

+0

好吧,如果你把它放在jar文件中,反正它可以被访问。 –

回答

3

这是无法完成的。忘记这个想法,重新思考你的系统。 您无法提供读取权限,但不能同时提供读取权限。

这是媒体行业法律部门的梦想。他们投入了大量的资金来解决这个无法解决的DRM问题,这种问题从来没有奏效,但让每个人都感到困惑。

你可以把它更恼人提取数据 - 使用各种混淆技术 - 但仅此而已。

其中的一个想法是在编码C++库的passoword并通过JNI链接。然后,用户无法解压缩二进制文件即无法解压缩,但无论如何都可以在运行时进行内存转储。

您可以在运行时从中央服务器读取密码。你可以使用一次性密码。同样,如果用户具有适度的技术技能,这是徒劳的,因为您仍然可以使用curl或一些简单的脚本向服务器请求密码。

可以使用硬件访问令牌,这将允许连接到数据库(智能卡或东西)。这在90年代是非常流行的技术。

所有你能做的就是增加烦恼,这将阻止非技术人员的一些水平。有了足够的资金,你可以建立一些体面的数字版权管理,这将阻止技术人才一段时间,但我严重怀疑这是值得的钱。

如果数据库访问是如此宝贵,你不能给它的用户访问,但他需要它,你的设计是坏了。

相关问题