有时候给客户做项目,一些敏感的信息需要进行加密处理,最近用的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() 这个方式中包含解密的方法,获取解密后的部分连接字符串,与原来的进行拼接,拼接时注意后面引号的使用,这是个坑,多一个少一个引号都解析不出来。
本文分享了在使用EF框架时如何对配置文件中的敏感信息,尤其是连接字符串进行加密处理,确保密码不以明文形式存在。通过将EF的配置字符串移至单独的加密文件,并在DBEntities.Context.cs中重写构造函数,结合自定义的解密方法,成功实现了加密与解密的流程,避免了因引号拼接错误导致的解析问题。
713

被折叠的 条评论
为什么被折叠?



