人人做人人澡人人爽欧美,国产主播一区二区,久久久精品五月天,羞羞视频在线观看免费

當前位置:蘿卜系統下載站 > 技術開發教程 > 詳細頁面

編碼web.config中的信息

編碼web.config中的信息

更新時間:2022-09-30 文章作者:未知 信息來源:網絡 閱讀次數:

我們都知道web.config可以保存連接字符串,我們在程序中也都是這么做的,web.config是XML,所以它有清晰的結構,是我們很容易可以讀懂它,但是這也出現一個問題,我們數據庫完全暴露給瀏覽該文件的人,這是我們所不希望的。我們可以使用一個簡單有效的加密算法來加密這段連接字符,使直接瀏覽該文件的人不能清楚地看到這些信息。
我們一般以下面的形式保存連接字符串:
<appSettings>
<add key="ConnectionString" value="server=localhost;database=test;pwd=sa;uid=sa;" />
</appSettings>
為了我們自己可以看得明白這些加密的字符我們需要一個額外的程序專門生成這些加密數據(這個額外的程序你可以寫得很復雜但是為了說明問題,我們使用簡單的base64編碼數據,這其實不是加密數據,但是原理是一樣的)。我們建立一個WinForm工程,專門用來生成明文到密文的(base64)轉換,如果使用其它的加密算法可以替換這個加密過程。轉換按鈕里面的代碼如下:
private void button1_Click(object sender, System.EventArgs e) {
byte[] data = System.Text.ASCIIEncoding.ASCII.GetBytes(this.textBox1.Text);
string str = Convert.ToBase64String(data);
this.textBox2.Text = str;
}
其中textBox2里面就是變碼以后的字符。我們可以將我們web.config里面的連接字符("server=localhost;database=test;pwd=sa;uid=sa;")取出來放在這個程序里面執行生成一個新的字符串(c2VydmVyPWxvY2FsaG9zdDtkYXRhYmFzZT10ZXN0O3B3ZD1zYTt1aWQ9c2E7)。
之后我們用這個字符替換未編碼的字符串。如下所示:
<appSettings>
<add key="ConnectionString" value="c2VydmVyPWxvY2FsaG9zdDtkYXRhYmFzZT10ZXN0O3B3ZD1zYTt1aWQ9c2E7" />
</appSettings>
哈哈!看不見了吧!但是我們的程序也不認識了:-( 沒關系我們自己知道加密算法所以我們的程序可以看懂,最后就是在程序中如何使用了,我們的程序需要理解這個字符串的意義,我們在數據訪問層里面添加如下的工具方法
private string GetConnectionString(){
string strconn = System.Configuration.ConfigurationSettings.AppSettings["ConnectionString"];
byte[] data = Convert.FromBase64String(strconn);
string strRealConn = System.Text.ASCIIEncoding.ASCII.GetString(data);
return strRealConn;
}
這樣就可以得到真實的連接字符串了。
上文一個簡單的加密(偽加密,其實本文實現的是一個編碼而非加密)的方法,也許可以騙過一些人的眼睛,但是對于了解內幕的人還是起步到什么保護的作用,所以你可以擴展這個算法,使用對稱或者非對稱的加密算法替換該案例里面的編碼算法,這樣基本上就萬無一失了。要使用對成加密算法加密數據請參考http://www.csdn.net/Develop/read_article.asp?id=23386里面介紹了一些方法,用非對成加密請參考其他文章。


comanes 說得對,所以我馬上改了。謝謝!

溫馨提示:喜歡本站的話,請收藏一下本站!

本類教程下載

系統下載排行

網站地圖xml | 網站地圖html
主站蜘蛛池模板: 渭南市| 屏山县| 谢通门县| 泌阳县| 沙河市| 闵行区| 凤山县| 婺源县| 泰宁县| 肇源县| 镇江市| 阿图什市| 比如县| 三门县| 山阴县| 思南县| 崇仁县| 正宁县| 平阴县| 阿瓦提县| 安徽省| 广水市| 巴彦淖尔市| 仪征市| 晋江市| 佳木斯市| 韶关市| 汉源县| 噶尔县| 体育| 黄骅市| 依安县| 怀安县| 常熟市| 黄浦区| 庄浪县| 璧山县| 夹江县| 怀宁县| 普兰县| 武清区|