看板 C_Sharp 關於我們 聯絡資訊
不好意思,請教一下 今天有遇到一些問題 就是一般來說,連到資料庫的帳號、密碼,都是寫在web config的<connectStrings> 這裡面 但是我今天看到有個程式碼,是他寫在cs中 就像這樣 : SqlDataSource1.ConnectionString="Data Source=AA; Persist Security Info=BB; User ID=CC; Password=DD; Unicode=EE"; 問題一: 我要怎麼樣才能讓這組連線字串不要出現在cs中,而是出現在web config裡面呢? 問題二: 如果他只能在cs中出現,我參考之前別人寫的程式,他們的做法是把連線字串儲在 資料庫裡面,然後再去讀取,這樣子帳號,密碼就看不到了 我學著做一下,可是都沒有成功(錯誤的訊息我忘記抄下來了...) 做法是,用之前別人寫的物件,這個物件可以去讀取資料庫的字串 例如那個物件叫這樣子 READSTRING.ICANREAD("DBNAME").ToString(); 寫的時後我這樣子寫: string icanreadDB,aa, bb, cc, dd, ee; icanreadDB = READSTRING.ICANREAD("DBNAME").ToString(); //這樣子就讀到字串了,因為我把帳號密碼寫在這個DBNAME裡面 aa = icanreadDB.Substring(int,int)//這邊假設int已經有數字了 bb = icanreadDB.Substring(int,int) cc = icanreadDB.Substring(int,int) dd = icanreadDB.Substring(int,int) ee = icanreadDB.Substring(int,int) SqlDataSource1.ConnectionString="Data Source=aa; //從資料庫讀出AA給aa Persist Security Info=bb; User ID=cc; Password=dd; Unicode=ee"; 但是這樣子的做法好像不行,請教一下,該如何實做呢? 謝謝幫忙了。 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.42.109.202 剛剛查到文章,我的第一個問題,好像在Web config裡面 我幫他加上<connectStrings>裡面帳號 密碼,寫進入就解決了@@? ※ 編輯: bernachom 來自: 114.42.109.202 (07/19 22:41)
ryan10328:MSDN上的參考範例 http://ppt.cc/Yo-B 是你要的答案嗎? 07/19 23:08
ryan10328:讀取資料庫字串的方式有很多種web.config只是其中之一, 07/19 23:09
ryan10328:若你要存在DB中,那你讀DB之前就會需要用到這個字串,所 07/19 23:10
ryan10328:以理論上,透過上面msdn的範例,就可以不用直接寫在cs中 07/19 23:10
ryan10328:寫在cs中有可能是因為開發方便吧,而基於安全性 07/19 23:12
ryan10328:在也是有方式可以加密web.config http://ppt.cc/IS~T 07/19 23:13
那第一個問題應該就解決了,因為程式不在手邊,要下禮拜才有辦法試 我的加密也是用這種方式,然後看到他寫在cs...就沒辦法加了 謝謝您的幫忙,算是解決一個問題了。 ※ 編輯: bernachom 來自: 114.42.109.202 (07/19 23:16)
ryan10328:應該把他的connection string移到web.config就可以了吧? 07/19 23:20
第一個問題嗎? 我覺得應該是這個樣子吧 ※ 編輯: bernachom 來自: 114.42.109.202 (07/19 23:21)
soup514:沒特別考量整串cnnstr就存到db 取出來還不用切 07/19 23:57
有吧?! 我不是用了substring嗎?? ※ 編輯: bernachom 來自: 114.42.109.202 (07/20 00:25)
soup514:整串=>"Data Source=AA;Persist Security Info=BB;..." 07/21 09:17
對耶...我為什麼要把它拆開... ※ 編輯: bernachom 來自: 114.42.119.51 (07/21 12:48)
ryan10328:要拆有可能是你有不同的id,pwd存在,但這些字串,最終 07/21 14:42
ryan10328:還是必須把它串起來成為一個完整的字串。 07/21 14:43
謝謝您的提醒,我也不知道為什麼我會想把他拆開,今天去試一下,沒有拆就好了 感謝。 ※ 編輯: bernachom 來自: 114.24.217.241 (07/22 22:32)
starshow:<add key="DBConnectionString" value="Provider=SQLOLED 07/25 08:52
starshow:.1;Persist Security Info=False;User ID=帳號;pwd=密碼; 07/25 08:53
starshow:Initial Catalog=資料庫;Data Source=主機IP"/> 07/25 08:53