【问题标题】:Undeleteable/ invisible .txt file不可删除/不可见的 .text 文件
【发布时间】:2016-05-23 09:21:27
【问题描述】:

目前我在 C# 中创建了一个 GUID 键,以将其放置在 USB 闪存驱动器上。我使用此密钥进行用户识别。密钥本身位于 .txt 文件中,易于操作。有没有办法使 .txt 文件不可删除且不可见但仍然可读?

【问题讨论】:

  • 不可删除且不可见是谁?第一个新手还是实验黑客?
  • 最好使用某种加密方式
  • 我认为几乎不可能让它对受过实验的黑客来说不可删除和不可见。所以普通用户应该无法操纵它。
  • “不可见但仍然可读”你自己也注意到了矛盾吗?
  • 它应该对我的应用程序可读,而不是对用户可读。

标签: c# file text protected invisible


【解决方案1】:

您可以通过将文件权限设置为 拒绝 - 删除更改权限获得所有权允许 - 读取权限

以编程方式,您可以使用File.SetAccessControl

基本上,你正在做的事情是:

File > Properties > Security Tab > Advanced > Permission Tab > Change Permission > Add User > Setting Permissions.

文件属性

高级权限

添加用户

设置权限

【讨论】:

  • 请注意,ACL 仅在 NTFS 上可用,如果您在同一用户下运行,它对您没有帮助。
【解决方案2】:

您可能做的最好的事情就是隐藏文件。你会这样做

string path = "";
File.SetAttributes(path, File.GetAttributes(path) | FileAttributes.Hidden);

【讨论】:

  • 是的,这就是我在阅读 Luaans 答案后搜索的内容。谢谢!
【解决方案3】:

没有。

想象一下如果这可能会发生什么。是的。

使文件隐藏 - 可能是隐藏+系统。这是你能做的最好的。如果用户无论如何都删除它,那是他的问题。你做了合同“隐藏”,你不能对故意克服这些安全预防措施的用户的行为负责。

【讨论】:

  • 想象一下如果这可能发生会发生什么宇宙将会内爆:p
  • 如果你能以编程方式用不可见的文件填充硬盘驱动器会很有趣
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2015-03-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-11-04
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多