对用户隐藏的 C# 设置
我想获取并设置一些为用户隐藏的应用程序设置。在本例中,这是两个令牌和两个正在被应用程序更改的令牌。但对于应用程序用户来说,这四个内容仍然是秘密。
我在MSDN和这个论坛上找到了两种方法。
- 使用 .config 文件。 ->这听起来不错,我可以更改其中的一些值。但发布后我仍然看到一个纯文本文件。
- 使用项目属性中的设置。 ->应该是吗?我读到了关于这毕竟不那么安全的警告。
很多网站都描述了 Web 服务器解决方案,而我只想拥有一个桌面解决方案。
顺便提一句。它不是一个商业产品,我正在制作一个业余爱好项目,以从 C#.net 中了解更多信息。
I want to get and set some application settings hidden for the user. In this case these are two tokens and two tokens that are being altered by the application. But still all four them are a secret to the application user.
I found two ways on MSDN and this forum.
- Use a .config file. -> this sounds okay and I can change some values in it. But I see still a plain text file after publish.
- Use the settings in the project properties. -> should it be? I read warnings about that this not so secure after all.
A lot of sites describe a web server solution while I just want to have a desktop solution.
Btw. It is not a commercial product, I am making a hobby project to learn more from C#.net.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
如果应用程序需要更改这些文件,您将需要将这些文件保留在应用程序之外,以便下次应用程序启动时加载新设置。
为此,您始终可以创建一个配置(或设置)文件并将其隐藏在程序集的 System.IO.IsolatedStorage 文件中。用户仍然可以对其进行编辑,但查找起来有点麻烦 - 而且这将与漫游配置文件一起传输,以便跨计算机使用设置。
一些简单的事情可以帮助您开始:
If these files need to be altered by the application, you will need to persist these outside of the application so that the new settings will be loaded next time the app starts.
For this, you can always create a config (or settings) file and hide it in the
System.IO.IsolatedStorage
files for the assembly. This is still editable by the user, but its a bit of a pain to find - plus this will transfer over with roaming profiles so that the settings are used cross machine.Something simple to help you start out:
设置的“存在”是否需要保密,或者只是其值?
如果是后者,我建议对保存到 .config 文件中的值进行加密。
Does the * existence* of the setting need to be kept secret, or just its value?
If the latter, I'd suggest encrypting the value you save to the .config file.