客户端安全配置文件

Secure configuration file in clients

本文关键字:配置文件 安全 客户端      更新时间:2023-10-16

在一个项目中,我们将为每个客户端创建配置文件(也可以在每个客户端中sqlite而不是配置文件)。这些文件将包括政策等关键信息。因此,最终用户不能添加、删除、更改该配置文件或文件中的其他内容。

我正在考虑使用活动目录来防止用户打开包含我的配置文件的文件夹。

是否有使用安全配置文件的标准方法?

编辑:当然,读取文件的速度也很重要,因为安全性

EDIT2:我不能用数据库服务器这样做,因为我的政策必须在没有互联网连接的情况下也可以访问。服务器将在某些时期更新该文件或sqlite表。我用的是c++

我很抱歉粉碎了你的希望和梦想,但如果你的安全性是基于客户端的配置文件,你就完蛋了。

配置文件由应用程序加载和解密,这意味着可以在应用程序运行时使用特殊工具更改值。

如果安全性很重要,在服务器上进行这些检查,而不是在客户端。

安全性是一个相当广泛的问题。如果你的系统被入侵了怎么办?有人赔钱了吗?是否有人在游戏中获得额外分数?有人能拿到核导弹发射密码吗?有人的医疗数据会被公之于众吗?

所有这些或多或少都是重要的安全问题,但你可以想象,核导弹发射对完全安全的要求比某些游戏更高,有些游戏可能会提高他们的分数,金钱和生命值显然会在这个范围的中间位置结束,我们可以添加许多其他东西到列表中。

你试图保护的"用户"类型也很重要。是国家级的安全专家(如FBI, CIA, KGB等),业余黑客,还是普通的电脑用户?加密文件可以阻止普通用户,也许还有业余黑客,但国家安全专家肯定不会因此而被挫败。

最终,如果保存数据的机器也知道如何读取数据,那么你就不可能拥有一个完全安全的系统。系统可以通过读取代码中的密钥来绕过,并重新实现任何解密/加密等,这是您的"安全"的一部分。一旦数据变成纯文本,它就可以被修改,然后重新加密并存储回来。

你当然可以让它更复杂,这意味着有人必须有更强的动机来通过你的复杂方法来工作,但最终,它归结为"如果机器知道如何解密某些东西,那么可以访问机器的人就可以解密内容"。

这取决于你(显然还有你的"客户"和/或"合作伙伴",你正在照顾他们的数据),你是否认为这是你可以冒险的事情。