ASP.NET数据库连接字符串的加密与解密

ASP.NET web.config中,数据库连接字符串的加密与解密。
虽然不怎么新鲜,但相信还是有许多人不知道,好,不说废话,直接给方法:开始--->运行,输入cmd,接着输入以下内容

加密:

C:/WINDOWS/Microsoft.NET/Framework/v2.0.50727/aspnet_regiis.exe -pef "connectionStrings" "你的Web项目路径"

解密:

C:/WINDOWS/Microsoft.NET/Framework/v2.0.50727/aspnet_regiis.exe -pdf "connectionStrings" "你的Web项目路径"

.NET为版本的路径自行修改,其中connectionStrings连接字符串的名称。

需要注意的是,加密过程中使用了一个基于本机的密钥,这意味着解密过程必须在同一台计算机上完成。如果是将加密后的Web.config文件移动到其它计算机上,那么Web.config文件中的连接字符串将不能够正常解密。
 -----------------------------------------------------------------------------------------------------------------------------------------
ASP.net2.0提供了简便的加密方法,即使用aspnet_iis.exe命令,该命令位置如下:
C:/WINDOWS/Microsoft.NET/Framework/v2.0.50727
注意,具体情况视系统位置及版本号有所差异

在命令模式下进入该目录即可运行,完整命令为:
aspnet_iis -pef "connectionStrings" "Web.cofing绝对路径(注:不需要输入web.config)"

如果正常会提示“成功”,此时打开Web.config会发现字符串已加密

解密命令为:
aspnet_iis -pdf "connectionStrings" "Web.cofing绝对路径(注:不需要输入web.config)"

注意的是加密、解密必须在一台机器上完成。

-----------------------------

下面显示的是通过代码方式对数据库连接字符串加密,代码如下:



Configuration config = WebConfigurationManager.OpenWebConfiguration(Request.ApplicationPath);

ConfigurationSection configSection = config.GetSection("connectionStrings");


if (configSection.SectionInformation.IsProtected)

...{//如果已经加密,就不用再加密了

configSection.SectionInformation.UnprotectSection();

config.Save();



}

else

...{

configSection.SectionInformation.ProtectSection ("DataProtectionConfigurationProvider");

config.Save();

}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值