国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

加密配置文件(App.Config和Web.config)中connectionStrings通用方法

2019-11-17 02:24:56
字體:
來源:轉載
供稿:網友

加密配置文件(App.Config和Web.config)中connectionStrings通用方法

Posted on 2015-04-29 17:20 Charles Chen 閱讀(...) 評論(...) 編輯 收藏

1、 背景:根據項目的要求,需要對配置文件配置的數據庫連接字符串進行加密,也就是對ConnectinString節點的內容進行加密存儲,同時考慮到代碼使用連接字符串不需要進行更改,C#會自動對加密的內容進行解密。

2、需求:因此考慮單獨開發一個winform程序,對配置文件進行加密和解密,通過ConfigurationManager中的OpenMappedExeConfiguration方法創建一個Configuration對象,然后在對這個對象中的指定節點進行操作。

遇到的問題:

ConfigurationManager.OpenExeConfiguration("C:/Charles2008.config");

這個方法在當前的目錄下產生一個副本("C:/Charles2008.config.config"),而且返回的Configuration對象操作的不是Charles2008.config文件,而是程序自動創建的Charles2008.config.config文件,然而如果我把文件Charles2008.config更名為Charles2008.config.config文件或者刪除Charles2008.config文件卻提示:

加載配置文件時出錯:參數“exePath”無效。參數名:exePath

3、解決方法:從網上尋找幫助,發現還真的有和我遇到一模一樣的問題,只需要在以上的代碼進行稍微一點改動即可,改動后不生成文件副本,直接操作文件,更新也是操作此文件。

//先實例化一個ExeConfigurationFileMap對象,把物理地址賦值到它的ExeConfigFilename屬性中;ExeConfigurationFileMapfileMap=newExeConfigurationFileMap();fileMap.ExeConfigFilename=@"C:/Charles2008.config";//再調用fileMap實例化config,這樣,操作的文件就是Charles2008.config文件了,也不會產生副本文件Configurationconfig=ConfigurationManager.OpenMappedExeConfiguration(fileMap,ConfigurationUserLevel.None);

4、加密連接字符串:上面技術難點解決后,根據獲取到Configuration對象Config調用以下方法即可對連接字符串進行加密。(僅針對ConectionString節點)

ConfigurationSectionconnectionSection=config.GetSection("connectionStrings");if(connectionSection!=null){connectionSection.SectionInformation.5、備注

加密和解密在同一臺計算機上使用,在加密過程中,使用了一個基于本機的密鑰。這就意味著加密和解密必須在同一臺計算機上進行,否則將不能解密。同時,在一臺計算機上加密的配置,在另一臺計算機上將不能正常使用。

連接字符串加密工具


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 长宁县| 南丰县| 南平市| 南皮县| 犍为县| 辽源市| 绥棱县| 舒城县| 阳曲县| 云安县| 香河县| 大冶市| 盐山县| 深泽县| 烟台市| 冷水江市| 奈曼旗| 镇宁| 平罗县| 察雅县| 武穴市| 台北县| 平阴县| 额尔古纳市| 乌海市| 云梦县| 福建省| 津市市| 陆良县| 弥勒县| 阿合奇县| 旬阳县| 满城县| 馆陶县| 承德市| 甘洛县| 芜湖市| 宁津县| 胶南市| 长春市| 武山县|