1.0 [2006-11-18]
本教程介紹nbearv3中的實體配置檔案的加密支援。
通過本教程,讀者應能夠全面掌握加密實體配置檔案和如何結合使用asp.net的配置節加密功能,實現部署環境關聯的實體配置加密。
本教程不包含任何演示**。
<10分鐘。
要啟用實體配置檔案加密,需要如下設定entityconfig配置節:
<?
xml version="1.0" encoding="utf-8"
?>
<
configuration
>
<
configsections
>
<
section
name
="entityconfig"
type
="nbear.common.entityconfigurationsection, nbear.common"
/>
configsections
>
<
entityconfig
encrpyt
="false"
key="aslkjkljlsajsuaggasfklrjuisdhaie"
>
<
includes
>
<
add
key="sample"
value
="c:/teddy/nbearv3/src/nbear.test.casetests/entityconfig.xml"
/>
includes
>
entityconfig
>
<
connectionstrings
>
<
add
name
="casetests"
connectionstring
="server=(local);database=casetests;uid=sa;pwd=sa"
providername
="nbear.data.sqlserver.sqldbprovider"
/>
connectionstrings
>
configuration
>
注意以上**中,entityconfig配置節加粗的兩個屬性:encrypt和key。
encrypt=true代表,啟用實體配置檔案加密。
key則指定了乙個用於加密/解密實體配置檔案的key。
如果啟用了實體配置檔案加密功能,則當前應用程式,將只能識別經過加密的實體配置檔案。
要加密/解密實體配置檔案,需要使用dist目錄中的nbear.tools.configurationencrypter.exe工具。這是乙個windows form程式,它的使用非常簡單,就是載入乙個配置檔案,指定加密key,並加密/解密這個配置檔案。
asp.net提供了config檔案的加密功能,例如,使用下面的命令列語句可以將iis中的指定應用程式的web.config的entityconfig配置節加密:
下面的語句則是對應的解密命令:
注1:您可以在命令列環境執行aspnet_regiis /help檢視aspnet_regiis的更多選項。aspnet_regiis.exe工具一般在[windir]/microsoft.net/framework/v2.0.50727/目錄下。
注2:您可能需要將dist/nbear.common.dll檔案複製到aspnet_regiis.exe所在的目錄,否則,加密/解密配置節的過程中可能會報不能載入nbear.common.dll錯誤。
您可能會問,使用如上命令加密web應用程式的配置檔案有什麼作用呢?
一旦使用aspnet_regiis加密配置節,則該配置檔案中被加密的配置節的內容會使用加密後的資料代替,這些加密資料,只在執行aspnet_regiis的這台伺服器上能夠被識別。也就是說,即使完整複製該應用程式到另一台伺服器,也不能執行該程式,因為配置檔案將不能正確識別。aspnet_regiis同時包含了更多其它加密選項,可以更靈活的控制配置節的加密過程。不過,這就是 asp.net的sdk文件討論的範疇了,這裡僅僅給出常用的方法,不做更多討論。
//正文結束
//本文結束
讀寫配置檔案教程
配置檔案名為 config.ini 配置檔案格式為 config serverip 192.168.1.1 讀配置檔案 tchar tspath 128 char srecvip 32 cstring strpash getcurrentdirectory 128,tspath strcat tsp...
WCF簡單教程 3 試著去掉配置檔案
第三篇 試著去掉配置檔案 通過配置檔案來設定host endpoint binding等是wcf中推薦的方法,這樣可以使發布盡量靈活。其實配置檔案中的值,最終還是要體現到 中的,只不過這部分工作由底層幫你做了。我們今天來嘗試去掉配置檔案,用純 實現發布過程,同時加深一下對層次關係的理解。1 服務端 ...
WCF簡單教程 3 試著去掉配置檔案
第三篇 試著去掉配置檔案 通過配置檔案來設定host endpoint binding等是wcf中推薦的方法,這樣可以使發布盡量靈活。其實配置檔案中的值,最終還是要體現到 中的,只不過這部分工作由底層幫你做了。我們今天來嘗試去掉配置檔案,用純 實現發布過程,同時加深一下對層次關係的理解。1 服務端 ...