zoukankan      html  css  js  c++  java
  • ASP.NET2.0中配置文件的加密与解密

    首先添加引用: 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>
  • 相关阅读:
    CentOS中怎样卸载旧版本Git并安装高版本Git
    下载抖音无水印视频工具 python webdriver 2020.09.02
    axel-2.17.9 aria2c-1.35.0 wget-1.20.3 curl-7.72.0 最新CLI下载工具在win10环境测试下载速度
    wget-1.20.3 static for win32
    undefined reference to `inet_pton' under MSYS
    undefined reference to `gnutls_protocol_set_priority'
    wget2 for windows 2020.08.28
    Unicode转义(uXXXX)的编码和解码 go-nascii 类似于 native2ascii
    正则表达式零宽断言 grep sift ripgrep(rg)
    编译 jq git版本
  • 原文地址:https://www.cnblogs.com/pw/p/435357.html
Copyright © 2011-2022 走看看