<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      Enterprise Library2.0中加密數據庫連接字符串

      看了SHY520寫的關于Data Access Application Block的文章,寫得不錯,忽略了一點就是如何去加密數據庫連接字符串,這兒我簡單的介紹一下。我們知道,在Enterprise Library1.1中加密連接字符串,需要依賴于Cryptography Application Block.NET Framework2.0中已經內置了這項功能,通過Configuration命名空間下的一些類來完成,支持兩種類型的加密:

      DPAPIProtectedConfigurationProvider:使用Windows Data Protection API (DPAPI)

      RsaProtectedConfigurationProvider:使用RSA算法

      下面來看一下具體的實現方法,假設已經有這樣的一個配置文件:

      <?xml version="1.0" encoding="utf-8"?>

      <configuration>

        
      <configSections>

          
      <section name="dataConfiguration" type="Microsoft.Practices.EnterpriseLibrary.Data.Configuration.DatabaseSettings, Microsoft.Practices.EnterpriseLibrary.Data, Version=2.0.0.0, Culture=neutral, PublicKeyToken=null" />

        
      </configSections>

        
      <dataConfiguration defaultDatabase="QuickStarts" />

        
      <connectionStrings>

          
      <add name="QuickStarts" connectionString="Database=EntLibQuickStarts;Server=RJ-097;Integrated Security=SSPI;"

            providerName
      ="System.Data.SqlClient" />

        
      </connectionStrings>

      </configuration>

      1.添加對System.Configuration.dll的引用

      2.在Program.cs中引入命名空間

      using System.Configuration;

      3.編寫相關的代碼:

      /// <summary>

      /// Author:TerryLee

      /// From:http://terrylee.cnblogs.com

      /// </summary>


      static void EncryptConfiguration()
      {   
          
      // 使用什么類型的加密

          
      string provider = "RsaProtectedConfigurationProvider";

          Configuration config 
      = null;

          config 
      = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);

          
      // 加密連接字符串

          ConfigurationSection section 
      = config.ConnectionStrings;

          
      if ((section.SectionInformation.IsProtected == false&&

              (section.ElementInformation.IsLocked 
      == false))

          
      {
            section.SectionInformation.ProtectSection(provider);

              section.SectionInformation.ForceSave 
      = true;

              config.Save(ConfigurationSaveMode.Full);

          }

      }

      該方法的調用放在程序的主程序的入口點:

      [STAThread]

      static void Main()
      {
          
      // Protect the Connection Strings

          EncryptConfiguration();

          Application.Run(
      new MainForm());

      }

      運行程序后,打開配置文件可以看到,連接字符串已經變成密文了。最后注意一點:加密的字符串在被加載到內存的時候解密。

      posted @ 2006-06-05 11:49  TerryLee  閱讀(9420)  評論(29)    收藏  舉報
      主站蜘蛛池模板: 国内熟妇与亚洲洲熟妇妇| 农村老熟妇乱子伦视频| 无码成人一区二区三区| 国产高清自产拍av在线| 精品国产成人国产在线视| 另类 专区 欧美 制服| 日韩精品 在线 国产 丝袜| 国产边摸边吃奶边叫做激情视频| 九色综合国产一区二区三区| 久久综合给合久久狠狠狠88| 91亚洲国产成人久久蜜臀| 精品夜恋影院亚洲欧洲| 国产成人精品中文字幕| 色综合色综合久久综合频道| 亚洲精品一区二区美女| 中文字幕无码乱码人妻系列蜜桃| 8050午夜二级无码中文字幕| 人妻日韩人妻中文字幕| 狠狠躁夜夜躁人人爽天天5| 亚洲国产精品日韩AV专区| 精品国产av无码一区二区三区 | 2020年最新国产精品正在播放| 中文字幕日韩精品无码内射| 毛片免费观看视频| 黑人巨大精品欧美一区二区| 久热这里只有精品视频3| 亚洲精品国产一区二区三| 亚洲欧美日本久久网站| 一区二区三区午夜无码视频| 久久精品国产熟女亚洲av| 蜜桃臀无码AV在线观看| 人妻精品久久久无码区色视| 亚洲av无码精品蜜桃| 亚洲一区二区三区影院| 小伙无套内射老熟女精品| 又湿又紧又大又爽A视频男| 九九热在线视频中文字幕| 中文字幕在线无码一区二区三区| 日韩高清亚洲日韩精品一区二区| 一边吃奶一边做动态图| 成人网站免费观看永久视频下载|