c++ - 如何使用特定于应用程序的 key 加密目录?

标签 c++ windows security filesystems encrypting-file-system

我正在开发一个 C++ 应用程序,该应用程序通过大量类、数据库库等在单个目录中的许多文件中存储(并经常访问)其数据。我想开始使用 key 加密磁盘上的所有这些数据由应用程序管理。

在 Windows 上,以编程方式为目录启用 EFS 将是完美的如果应用程序可以直接设置加密 key ,而不是使用基于登录用户密码的 key 。这似乎不可能。

因为代码中有很多地方可以读取/写入文件,其中一些具有完全随机访问权限,所以在没有直接操作系统支持的情况下,导出类似于操作系统文件操作 API 的内容的库将是最简单的。

Windows 是最大的用户群,但在 Mac 和 Linux 上可用的东西将是一大优势。

有什么建议吗?

最佳答案

将应用程序配置为作为服务帐户运行,仅供其使用。然后,配置 EFS。由于应用程序的服务帐户将拥有这些文件,因此它的用户特定 key 应该是唯一有效的 EFS key ,因此只有应用程序(将是唯一在这个新服务帐户下运行的东西)才能访问这些文件.

关于c++ - 如何使用特定于应用程序的 key 加密目录?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14405356/

相关文章:

windows - 为什么不需要 `call` 从管道中涉及的被调用批处理脚本返回?

ruby-on-rails - 为什么我的 View 被标记为 XSS 漏洞?

mongodb - 使用 Mongo shell 登录而不显示密码?

c++ - 通过 C++ 中的公共(public)函数分配私有(private)成员值

c++ - 是否有用于 directx 9 c++ 的 irc 聊天室?

C++ 任务不正确的结果

c++ - Boost Spirit语法eol

sql-server - 将数据库备份到 MS Access 的夜间任务

security - 如何从安全网站访问不安全的 websocket?

windows - 具有可扩展行的 Infragistics UltraGrid