各位前輩好,
想詢問關於舊資料庫dbase的相關問題
前人的設定是在伺服器上開資料夾分享,權限為everyone
使用者再透過網路磁碟機連線該根目錄
在建立捷徑指向子資料夾的執行檔
後來發現,這樣每個使用者都可以進入資料夾,並透過excel之類的程式開啟資料庫
進而瀏覽一些非自己部門的資料,但我不是維護程式的相關人員,請問我要怎麼做才能改善現況
或是提供給我們維護程式的相關人員建議,謝謝
感恩
1.DBF檔:本身沒有安全控管機制. =>所以不可以從檔案下手.
2.只能透過WINDOWS 的"資料夾"權限管理來控管.
因為USER是用EXCEL來開,只能用資料夾權限管理.
感謝回應
如果用資料夾權限管理,是不是要先了解資料庫的相關連結?
然後每個dbf檔都要設定嗎?
1.DBF的資料關聯性是寫在程式裡的.(由工程師設定INDEX, 用程式去SEEK.而不是像MS-SQL有一個管理介面)
2.然後每個dbf檔都要設定嗎?=>一般DBF都是放在同一個目錄中啊.DBF檔:本身沒有安全機制.(若是用WINDOWS的進階權限對每一個DBF檔做設定,那可能會造成:程式無法執行的問題)
感謝回應
據我了解,我們至少有3個以上的程式,使用者權限可能有穿插
所以我是不是應該要先知道資料庫的關聯性才能針對資料夾設定權限?
樓主在轉圈圈喔.
先檢查一下執行的目錄內有那些"東西"(副檔名):正常來說應該會有三大類:
a.xxx.prg =>dbase的執行程式
b.xxx.dbf =>資料檔
c.xxx.idx =>索引檔(index檔)=>是不是idx不確定.)20年前的東西)
可能還會有 xxx.txt =>程式產生的報表檔
有3個以上的程式,需要"使用者權限"才能使用=>這三支程式的開頭要輸入帳號密碼. 這些帳號密碼"應該"要存在某一個dbf檔中, 至於那一個dbf檔:請自行看程式.
如果要"限制"只能"有這三支程式登入權限"的人,才可以看到這三支程式"使用"的dbf.做法:
a.先將目錄完整複製成另一個資料夾.
b.再將新資料夾中:與這三支程式有關的dbf:刪除.
c.修改原來的資料夾權限:將everyone移除,改加可以使用這三支程式人員的帳號及administrator
d.公告:所以人改連新資料夾.私告:有三支程式權限的人:可以連原來的資料夾.
收工
感謝回應
不好意思,可能我表達不清楚或是不懂您的意思,我重新整理一下
我指的程式是指,假設有訂單系統、會計系統、採購系統、生管系統
採購系統可能跟生管系統及訂單系統有關連性..等等
如果我把訂單系統設定成特定使用者權限,那採購系統會不會有問題
所以提問是不是要先釐清各系統程式的關聯性才能有動作
甚至細到xxx.dbf中涵蓋一般使用者與主管的資料,這時候一般使用者還是可以開的到相關資料
大概是這個意思,如果不清楚的話在麻煩跟我說,不要放棄我XD
請問:您如何做到"把訂單系統設定成特定使用者權限" ?
假設A部門負責訂單,所以把訂單系統的資料夾權限開給A部門這樣
請問:"訂單系統的資料夾"與其他系統存放的資料夾不同嗎?
是的,在不同資料夾
DBF 只是個檔案
除了 dBase III Plus 以外
請問貴公司是用何程式
去使用 DBF 資料庫?
1.FoxPro / Visual Fox Pro
2.Clipper
3.dBase III Plus
4.Excel
5.其他
還是使用者都「直接開啟 dBase III Plus 來使用資料庫?」
那我就沒輒了
蓋上手中卡牌
結束這一回答
提供給我們維護程式的相關人員建議
既然寫程式的人還在
那就將程式修改
依權限 將 受管制資料拆分成 不同 dbase, 不同分享目錄
比如:
以上!
希望能幫您忙!
印象中無論哪家防火牆還沒辦法防止檔案型態的DB被不當DML吧,DBASE3之後就有鎖碼功能,只是現在能用的ODBC不支援解碼,還是要回到DBASE才行,只能說舊系統就是麻煩,還是轉換比較快
對不起!
我沒看清楚樓主問題!
回答錯誤!
請版主幫忙刪!
檔案式DB要開一定要看到檔案,一個正常的系統大概有幾百上千個DBF,打算針對每個DBF去設定防火牆條件? 太累人了吧
還有單個DBF可能存放幾十個USER建立的資料,怎麼去限定USER只能修改自己建立的資料,這就是我說的不當DML的問題,就像 sql injection 一樣,不可能單靠防火牆就能搞定的
再給各經驗,早期鼎新LEADER MRP 這一套就是走 DBF 檔案式資料庫的,我們先排除 LEADER APP本身,你要如何在沒有任何的APP狀態下去規範每個DBF的 USER 權限,答案是根本不可能,即使系統放在嚴謹的UNIX上面,你的權限代碼從 000 到 777,都無法去有效規範DBF內的資料誰可以開誰可以編輯誰可以看,那些資料列某個USER就是看不到,那些欄位USER就是不能看,甚至刪除資料,USER查不到資料,但是實際上ADMIN權限的人還是可以看到這些MARK刪除記號的資料,也能看到是被誰刪除的,這些是DML的操作,早期的DB沒有管理系統,就算有,也是很簡略,防火牆能彌補這方面的操作,基本上我是沒看過可以的
改了另一個方法!
希望能幫上忙!
感謝回應
但是原始問題還是在,不過有縮小了範圍,我再跟我們維護程式的人員討論,謝謝