如何给app.config加密
加密app.config文件敏感数据,解决安全隐患
该经验主要用于使用.net 的DPAPIProtectedConfigurationProvider 程序进行加密
第一步新建一个demoapp 应用程序
第二部添加配置文件app.config
并将如下内容复制
第三步添加安装类(installer)文件,demoapp_installer.cs
内容如下:
[RunInstaller(true)]
public partial class demoapp_installer: System.Configuration.Install.Installer
{
public guang_caiji_installer()
{
InitializeComponent();
}
public override void Install(System.Collections.IDictionary stateSaver)
{
base.Install(stateSaver);
ProtectSection("connectionStrings", Context.Parameters["assemblypath"]);
}
private void ProtectSection(string connectionStrings, string exeFilePath)
{
Configuration configuration = null;
// Open the configuration file and retrieve the connectionStrings section.
configuration = ConfigurationManager.OpenExeConfiguration(exeFilePath);
ConnectionStringsSection configSection = configuration.GetSection("connectionStrings") as ConnectionStringsSection;
if ((!(configSection.ElementInformation.IsLocked)) && (!(configSection.SectionInformation.IsLocked)))
{
if (!configSection.SectionInformation.IsProtected)
{
//this line will encrypt the file
configSection.SectionInformation.ProtectSection("DataProtectionConfigurationProvider");
}
//re-save the configuration file section
configSection.SectionInformation.ForceSave = true;
// Save the current configuration
configuration.Save();
//configFile.FilePath
}
}
第四步添加安装项目 setup project 选择 demoapp_setup
View—File System—Application Folder —Add— Project output,
最后选择primary output
第五步
通过install 添加自定义动作 custome action
第六步
安装编译好的安装包,即可得到加密的配置文件
版权声明:本站【趣百科】文章素材来源于网络或者用户投稿,未经许可不得用于商用,如转载保留本文链接:https://www.qubaik.com/life/79059.html