web.config文件的加密

 

    今天无聊,突然看起了petshop的代码,看到了membership连接字符串为SQLMembershipConnString,但在connectionString中并没有发现对应的名字,而且在connectionString中发现了奇怪的字符:

<connectionStrings configProtectionProvider = " RsaProtectedConfigurationProvider " >

直觉上告诉我这是一个加密了的东东,于是打开了msdn,找到了相关信息。
    对web.config的加密主要是通过以下命令完成:
加密:
aspnet_regiis  - pe  " connectionStrings "   - app  " /SampleApplication "   - prov  " RsaProtectedConfigurationProvider "

解密:
aspnet_regiis  - pc  " RsaProtectedConfigurationProvider " –exp

但输入以上信息时你会发现一个错误(具体内容已经忘了,好像是提示你没有权限之类的)。这时你要先执行一个命令,利用aspnet_regiis的另一个参数:-pc 和-exp先建立一个rsa key 的容器(msdn上的说法,我不清楚container是否应该译为容器)。在petshop中,使用的rsa provider为 RsaProtectedConfigurationProvider。创建rsa key container命令为:
aspnet_regiis  - pc  " RsaProtectedConfigurationProvider " –exp

现在你就可以在这个容器里对web.config中相应的节(session)进行加解密了。如果你用上面所介绍的命令可能会遇到另一个问题,你会发现不能连接相应的application,这有可能是你的网站没有在iis里建立(我通常做开发的时候是用文件系统来创建网站的)。你可以在iis里建立你的网站,你可以采用另外一种方式——利用aspnet_regiis的另外一个参数:-pef(加密) -pcf(解密)
加密:
aspnet_regiis.exe  - pef  " connectionStrings "   " C:\petshop4.0\web "  

解密:
aspnet_regiis.exe  - pdf  " connectionStrings "   " C:\petshop4.0\web "  
现在你就可以对web.config上相应的节进行加解密了。
这是我对web.config加解密学习中的一些总结,防止以后再要查msdn。

转载于:https://www.cnblogs.com/a12-3/archive/2008/06/18/1224843.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值