小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

web.config 加密與解密 實(shí)戰(zhàn)

 悟靜 2011-12-12

首先添加引用:

using System.Web.Configuration;

加密操作如下:

private void ProtectSection(string sectionName, string provider)
     {
         Configuration config =
             WebConfigurationManager.
                 OpenWebConfiguration(Request.ApplicationPath);

         ConfigurationSection section = config.GetSection(sectionName);

         if (section != null && !section.SectionInformation.IsProtected)
         {
             section.SectionInformation.ProtectSection(provider);
             config.Save();
         }
     }

解密操作如下:

private void UnProtectSection(string sectionName)
     {
         Configuration config =
             WebConfigurationManager.
                 OpenWebConfiguration(Request.ApplicationPath);
         ConfigurationSection section = config.GetSection(sectionName);
         if (section != null && section.SectionInformation.IsProtected)
         {
             section.SectionInformation.UnprotectSection();
             config.Save();
         }
     }

實(shí)踐:
加密前的配置文件:

<?xml version="1.0"?>
<configuration>
     <appSettings>
   <add key="name" value="shy520" />
   <add key="address" value="cnblogs" />
</appSettings>
     <system.web>
         <compilation debug="true"/>
   </system.web>
</configuration>

加密后的配置文件:

<?xml version="1.0"?>
<configuration>
     <appSettings configProtectionProvider="DataProtectionConfigurationProvider">
   <EncryptedData>
   <CipherData>
     <CipherValue>
       AQAAANCMnd8BFdERjHoAwE/Cl s
       BAAAABi1ATlNkEUGEf0XyWGL2Xg
       QAAAACAAAAAAADZgAAqAAAABAAA
       ABIhxMWlazAntwIIpST1CDXAAAA
       AASAAACgAAAAEAAAAPz/YKYx07c
       b h4fqdr4fkLgAAAAX1Ieyc WSx
       AfsDW1vn2C/fXsG2TAnYeUgaCov
       8e3nGFTHHsH91gLiqKregFPYzGR
       vW1xrez/3VwOmJI9eS7EFKrcXej
       NnHL66kg2iNRk3ntLNZlZtTs3cZ
       9w63u47VKAjs6miWsGBz2GntL/9
       UGHLELigrJcr3YJ lsjOscExQnv
       HGvA48EfxpD tEiFBtgXeHsFkQX
       cqGySshx16vCt2GUNUC3ZmEAhBh
       UsAFkPIYqelYHd4 m9a/xPe2tqw
       GIbla1wbW2NDEfrzJPwnkfmpNqR
       hXijKImipwXbDVYy6o0UAAAAs8D
       suYNOhJ7qAjJa2c/4eUC7sks=
       </CipherValue>
   </CipherData>
   </EncryptedData>
</appSettings>
     <system.web>
         <compilation debug="true"/>
   </system.web>
</configuration>

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

或者:

//解密可以寫在頁面,但也加密如何進(jìn)行?
protected void Page_Load(object sender, EventArgs e)
    {
        //獲取網(wǎng)站根目錄下的web.config配置文件對(duì)蠏
        Configuration config = WebConfigurationManager.OpenWebConfiguration("~/");
        //獲取appSettings配置塊信息
        ConfigurationSection appSettings = config.GetSection("appSettings");
        //判斷配置塊是否加密,如果己經(jīng)加密,則進(jìn)行解密
        if (appSettings.SectionInformation.IsProtected)
        {
            appSettings.SectionInformation.UnprotectSection();
        }
        else
        {
            //如果沒有加密,則調(diào)用ProtectSection方法進(jìn)行加密工作
            appSettings.SectionInformation.ProtectSection(
            "DataProtectionConfigurationProvider");
        }
        //保存配置信息
        config.Save();
        Response.Write("讀取web.config配置文件中的<appSettings>配置節(jié)<br/>");
        foreach (string key in WebConfigurationManager.AppSettings.Keys)
        {
            Response.Write("鍵值名: " + key + "<br />");
            Response.Write("鍵值值為: " + WebConfigurationManager.AppSettings[key] + "<br/><br/>");
        }
    }

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多