对web.config信息加密方法
Web.config文件的某些节点包含了敏感信息,比如:connection strings, user names, passwords,server names, encryption keys等等。在下面的这些节点找到这些信息:
<connectionStrings>
<add name=”bonzerDemo” connectionString=”Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Program
Files\bonzer\database\Northwind_zh.mdb” providerName=”System.Data.OleDb”/>
</connectionStrings>
这里面包含了数据库的类型、资源地址、用户名和密码。如果一方面要对这里面的信息进行加密,另一方面又不影响报表的正常浏览要如何做呢?
这里提供一种简单易行的方法,利用ASP.NET IIS Registration工具来进行加密:
首先,由命令行进入到cd C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727中,调用里面的aspnet_regiis.exe来进行加密,例如:
aspnet_regiis.exe -pef “connectionStrings” “C:\Program Files\bonzer\webroot” -prov ”
DataProtectionConfigurationProvider”
这个命令的意思就是对博计应用下的web.config中的connectionStrings节点进行加密。
然后,回车可得到下面的结果:
Encrypting configuration section…
Succeeded!
表明加密已经完成,这时打开web.config文件可以看到原来的connectionStrings中的内容变成了:
<connectionStrings configProtectionProvider=”DataProtectionConfigurationProvider”>
<EncryptedData>
<CipherData> <CipherValue>AQAAANCMnd8BFdERjHoAwE/Cl+sBAAAAAss6oQVulkyVt2T7RMfq3AQAAAACAAAAAAADZgAAqAAAABAAAAAuM4XG4E8hjoviWtAwhzg8AAAAAASAAACgAAAAEAAAALqs72wBAAeZoKErfJUSvaNIAwAAcKbWWhqkff6KzYfiU8JzkvBzTuUUAyCjf0lGbwgZ4kJ5+dKCNYp4fhDOtvGCBsBXVLGOKFLA2i+ePfCMlCgT79Wxvgce4keoL9s6nf7Y+MvWYVyr7vrXY4+Yn9NPWkVy12aomPw3RI3F/4gUzksNnf2VXaYMoEkxl9dQkRFkQo5V6p8vpRQqGuclBjvpmJq6mNdvLidIABYWezwiYRh5Ta8p3J8k9eC8N/f//u3/nRhI77Q23+ZeOniKZ8jdqxMStOgEHjnNJZwludUyxP9eJXAXf1k0i7x/pFR8AJMDSzjJDw8E5zDqmDQOoD5cm79ZTp+/ySxgIy4wGOijTVgSN0kObj8FHxqU9QeQ9uiLIGOBW5WmLjggu6v/rfNuqCkfBkRDHWov6M3rovoxGezRMqmmbcF7ZU7T83Ugd/7VFmUnSaotojrFmkybnemDnkmZrfN06BE3rJV2ebYUicRr6C7WubZgbenWTPEC7+0atGAPPD4tOJ3j57Xag1AuKsfoWIrriyoRyINnvlTGeQRq3+/0rWpbN4EM2Yit5l2Wnc8ZmucMnWH2L8qPIcWFzf/qUeszqqPUJW7KVbq4dgMYUmAJsvENKSaA18VrPnNeACZNAOTndbGgPXtC7e/wZUpEC02wvEzPlsv3qWUSwO4DxOUh8ssn5CsxHayY/h/t1erqQv8L8xd8EDXrr9d8LMa4wKXKz5bVUu8bXwgRzkKJ0pOIMifujuKO336GAKaQ1df3kutd/QrQVpHvYg6nnGnEry1+FCj25VZcfSLPFI9MXEjvqCztXbOJ3EGSr/vf7VLYLGo5PdAUImduYcDgkrdEs6OqCz1yj752aaghQVFXi7VBo78ZO0HMlNLMK9X2+Tq6LRZ0SYGA88Kl+lKqtu1aaER1tGfYZixoGNZGyX8chZm1P7IzXxORQnlNLu7fQon4Jo1h87YcWmrqTfFTgNI9sj2×48n7Jos0/zZj/2mZgSVgh84Ew+Gv1PdIQAfLn4JsIFzOQvtMrvrtJxKWHGaAjtuAsi1pn5NcI069PpFs+TlH80X5hcRLEUPi3zpQHzSajXr+2vRPuwLRnqDNC4UJsLLiYUG/KRCto9ztXjlIvra4TR33vLU+FAAAAEGRB7lLtZlnNTq+JWH7BiW2BnYE</CipherValue>
</CipherData>
</EncryptedData>
</connectionStrings>
说明加密已经完成,接着我们可以看一下是否影响浏览: