有时候给客户做项目,一些敏感的信息需要进行加密处理,最近用的EF框架,连接字符串在配置文件中密码不能明文显示,做了以下处理,尝试了好几次才算成功,分享一下
1.把EF的配置字符串放到一个文件中,xml或者ini文件,加密方法可以自己选择一些加密算法进行处理,加密部分包含用户名和密码。
2.找到DBEntities.Context.cs文件,重写构造函数
public DBEntities(): base("metadata=res://*/UBMPDB.csdl|res://*/UBMPDB.ssdl|res://*/****DB.msl;provider=System.Data.SqlClient;provider connection string=';" + ConnectStringHelper.ConStr() + ";MultipleActiveResultSets=True;App=EntityFramework'")
{
}
3.ConnectStringHelper.ConStr() 这个方式中包含解密的方法,获取解密后的部分连接字符串,与原来的进行拼接,拼接时注意后面引号的使用,这是个坑,多一个少一个引号都解析不出来。