程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> 關於.NET >> NBearV3教程——實體配置文件加密篇

NBearV3教程——實體配置文件加密篇

編輯:關於.NET

版本

1.0 [2006-11-18]

簡介

本教程介紹NBearV3中的實體配置文件的加密支持。

目標

通過本教程,讀者應能夠全面掌握加密實體配置文件和如何結合使用ASP.NET的配置節加密功能,實現部署環境關聯的實體配置加密。

代碼

本教程不包含任何演示代碼。

時間

<10分鐘。

正文

1 配置及啟用實體配置文件加密

要啟用實體配置文件加密,需要如下設置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。

如果啟用了實體配置文件加密功能,則當前應用程序,將只能識別經過加密的實體配置文件。

2加密/解密實體配置文件

要加密/解密實體配置文件,需要使用dist目錄中的NBear.Tools.ConfigurationEncrypter.exe工具。這是一個Windows Form程序,它的使用非常簡單,就是載入一個配置文件,指定加密key,並加密/解密這個配置文件。

3 使用ASP.NET的配置節加密工具實現部署環境關聯的配置節加密

ASP.NET提供了config文件的加密功能,例如,使用下面的命令行語句可以將IIS中的指定應用程序的Web.config的entityConfig配置節加密:

aspnet_regiis -pe "entityConfig" -app "/應用程序的名字"

下面的語句則是對應的解密命令:

aspnet_regiis –pd "entityConfig" -app "/應用程序的名字"

注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文檔討論的范疇了,這裡僅僅給出常用的方法,不做更多討論。

//正文結束

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved