【问题标题】:.net WPF application create a secure folder.net WPF 应用程序创建一个安全文件夹
【发布时间】:2013-05-24 06:44:34
【问题描述】:

我正在开发一个使用 .net WPF 构建的桌面应用程序。我在应用程序中有一些数据,例如图像、视频..

我想让这个文件夹安全,这样在应用程序安装后没有人可以访问文件夹内的数据。只有应用程序可以从该目录读取数据。

即使该机器的管理员无法打开该文件夹来检查内容。

是否有可能在 WPF 应用程序中拥有这种安全性。

只是为了保护敏感数据免受应用程序用户的外部复制。

谢谢, 维杰

【问题讨论】:

  • 应用程序被授予运行它的用户所拥有的权限,管理员将胜过一切。你想在这里解决什么问题? “保护”您的 IP?
  • 感谢您的及时回复....我的客户有保护数据免受外部复制的特殊要求。所以没有人可以复制数据并滥用它。它是一个企业级应用程序。
  • 这根本不是 WPF 问题。这都是关于 Windows 安全性的。管理员将始终能够获得访问权限。如果他不能,他就不会是管理员。
  • 我知道,除了管理员之外,任何其他用户都无法从应用程序目录复制数据..我们可以做到这一点吗?
  • 如果用户不能“复制”数据,他就不能使用它,如果他不能使用它,为什么首先要有它呢?任何可以使用的东西,都可以复制。

标签: c# .net wpf security


【解决方案1】:

这取决于您如何使用这些资源。 实际上,您可以加密所有“受保护”文件,这样安装后每个人都可以复制但没有人可以使用它们,除非您的应用程序解密文件。 当您加密文件时,您应该明确地测试性能(解密需要一些时间)。

两个链接展示了如何做到这一点:

【讨论】:

    【解决方案2】:

    将您想要强力保护的文件添加到您的解决方案中。然后右键单击每个文件,转到属性并将其“构建操作”设置为“嵌入资源”。

    关于如何从 exe 中访问资源流以在您的应用程序中使用,请参阅下面的链接

    How to compile all files to one exe?

    这样,您的私人文件不会被复制到安装文件夹,而是驻留在您的 .exe 文件中。

    【讨论】:

    • 这顶多是默默无闻的安全。
    • 有些文件是用户创建的,如提案pdf、xps文件,这些文件是在所有计算后创建的。这些文件也需要保护。那么我们也可以这样做吗...
    【解决方案3】:

    WPF 不是重点。应用程序以启动它们的用户的权限运行。如果应用程序需要访问文件,那么用户也需要拥有这些文件的权限。

    简而言之,答案是否定的,你不能完全按照你的要求去做。

    您能做的最好的事情就是让用户难以发现资产的来源,但如果不授予应用程序用户的访问权限,您将永远无法授予对应用程序的访问权限。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2010-11-04
      • 1970-01-01
      • 1970-01-01
      • 2010-12-18
      • 1970-01-01
      • 1970-01-01
      • 2020-04-11
      • 1970-01-01
      相关资源
      最近更新 更多