问题描述
我正在使用C#&WPF,当然还有一个app.config文件.我找不到存储在app.config中的加密连接字符串的示例.有很多关于asp.net和web.config的示例,但对于app.config来说,没有任何示例.我遇到的唯一示例清楚地表明,该字符串仅在首先加密的同一台计算机上是"可解码"(甚至是一个单词?).在app.config?
中使用加密连接字符串(或其他数据)是否有可行的选项?推荐答案
strings-programmatily-in--app-config/" rel=" rel="nofollow, .config
private void ProtectSection(String sSectionName) { // Open the app.config file. Configuration config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None); // Get the section in the file. ConfigurationSection section = config.GetSection(sSectionName); // If the section exists and the section is not readonly, then protect the section. if (section != null) { if (!section.IsReadOnly()) { // Protect the section. section.SectionInformation.ProtectSection("RsaProtectedConfigurationProvider"); section.SectionInformation.ForceSave = true; // Save the change. config.Save(ConfigurationSaveMode.Modified); } } }
问题描述
I am working with C# & WPF and, of course, an app.config file. I have not been able to find an example of encrypted connection strings, stored in the app.config. There's plenty of examples for ASP.NET and web.config but nothing solid for app.config. The only examples I have come across clearly state that the string is only "decode-able" (is that even a word?) on the same machine that it was first encrypted on. Are there any viable options for working with encrypted connection strings (or other data) in an app.config?
推荐答案
Encrypt ConnectionStrings in App.config
private void ProtectSection(String sSectionName) { // Open the app.config file. Configuration config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None); // Get the section in the file. ConfigurationSection section = config.GetSection(sSectionName); // If the section exists and the section is not readonly, then protect the section. if (section != null) { if (!section.IsReadOnly()) { // Protect the section. section.SectionInformation.ProtectSection("RsaProtectedConfigurationProvider"); section.SectionInformation.ForceSave = true; // Save the change. config.Save(ConfigurationSaveMode.Modified); } } }