现在的位置: 首页 > 综合 > 正文

ASP.NET2.0中配置文件的加密与解密

2013年10月10日 ⁄ 综合 ⁄ 共 2086字 ⁄ 字号 评论关闭
首先添加引用: 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();
        }

    }

实践:
加密前的配置文件:

<?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>

 

抱歉!评论已关闭.