2013-02-25 76 views
1

我已被分配用於開發要在超過1000個位置部署的應用程序。我對我正在使用的數據庫有一些安全問題。我想確保數據庫只能訪問我的應用程序。數據庫包含一些非常敏感的數據庫信息(凍結的銀行賬戶轉賬數字),只有在遠程服務器允許(只能由我訪問)允許的情況下才能讀取。僅適用於我的應用程序的SQL Server數據庫訪問

我的想法,以達到上述情況如下,

  1. 安裝應用程序的過程中,sa密碼將應用程序和密碼更改將被應用是已知的。
  2. Windows身份驗證將被應用程序禁用,沒有Windows用戶將能夠訪問SQL管理工作室。

雖然我的擔憂是如下,

  1. 任何人去重視數據庫,並在不同的安裝高度,數據庫的訪問將被用戶獲得。
  2. 我必須提供備份數據庫的選項,用戶可以在不同的安裝中恢復數據庫。
  3. 我想會有一些方法可以在用戶具有完整的文件系統窗口訪問權時替換ldf-mdf文件。

我不會介意用戶是否獲得對數據庫的只讀訪問權限,但我強烈堅持數據庫不應該允許寫入操作。

任何建議如何實現這一點。

例子: SQLite,讓.NET具有類似數據庫的加密,從而確保數據庫應用程序的訪問,同時可以完全訪問文件系統的某些功能,但不建議sqlite的大規模應用,因爲SQLite的僅支持一次一個作家。

+0

爲什麼包含銀行賬戶號碼的數據庫在不同的位置會有1000多份副本(一個重要的安全問題!)? – Raptor 2013-02-25 06:27:02

+1

不應該是像1數據庫 – c0dem0nkey 2013-02-25 06:30:08

+0

**更新**: - 並不是每個位置的數據相同,每個位置都有不同的數據集,例如每個機構將爲他們的員工使用不同的銀行賬戶,我不會只允許他們在銀行賬戶被他們凍結之後進行編輯,除非得到遠程總部的許可。因爲他們的薪酬/津貼將從遠程總部貸記。對高級員工來說,這是一個非常規律​​的過程,所以不能被視爲一次。 – 2013-02-25 09:38:27

回答

1

我同意Shivan Raptor的觀點,即您的整體設計有問題。

部署此類應用程序很好,但您需要集中SQL數據庫。如果需要在遠程位置部署此類數據庫,則每臺擁有此類數據庫的計算機都需要防彈(即,即使在本地也無人可以訪問它,包括管理員)。 SQL服務器部署是以服務器爲中心的。他們預計將集中。只要有人具有管理員身份的電腦,您的數據是不安全的。

  1. 最好開發應用程序,您可以將它部署到1000個位置;但所有這些應用程序都會從​​數據中心的集中式SQL服務器中提取所需的數據。

  2. 或者,將數據部署到數據中心的SQL數據庫中,並配置1000位置與中央SQL數據庫之間的受保護的發佈者/訂閱者關係 - 除非您有非常特定的場景/我們不知道的環境。

  3. 或者像IBM Lotus Domino一樣使用其他平臺(與上面的#2相同)。

最好是#1。請記住,要完全防止寫入訪問;服務器無法位於遠程辦公室 - 例如:本地有人可以將HardDisk從該計算機上拔下,插入另一臺計算機,進行所有更改並將其插回計算機。

+0

爲什麼我被迫開發這樣一個應用程序,因爲在遠程客戶端連接不好。如果我有連接性,那麼我首選Web Client模式,而不是桌面應用程序。我寧願創建一個模塊,使模塊同步數據遠程服務器。目前我們正在使用sql server作爲後端,所以如果我們能找到一個好的方法,否則從頭開始編寫一個應用程序將會是開銷。感謝幫助。 – 2013-02-25 09:53:29

+0

好的,在這種情況下,您可能需要實施完整的客戶端加密。意味着數據庫中的每個字段都被加密(和校驗和)以防止查看和寫入。從數據庫讀取並在處理之前,您需要比較每行的校驗和,以確保記錄沒有被篡改。 – 2013-02-25 20:11:15

0

在這裏有幾件事關注我。設置數據庫的訪問級別是您最擔心的問題。您的網絡和服務器管理員在哪裏以及他們如何控制對服務器的訪問?你是否受到防火牆保護,正確的端口路由和保護?

說到存儲銀行帳號,他們是從不存儲在任何未加密的數據庫。構建函數進行加密以存儲和解密數據以供查看。根據今天的隱私法,金融機構也開始加密客戶姓名,地址和電話號碼。

另一個問題已經提出。以上我的隱私點,數據不應該在多個系統上可用,例如, 1-2個生產服務器。任何遠程,質量保證和開發數據庫必須使用清理數據...沒有銀行或cc帳號,沒有電話號碼,也沒有地址或名稱。

我會盡量爲您挖掘一些鏈接,但在處理敏感數據(如帳號)時還有很多內容需要彌補。

+0

我很清楚我們的數據有多敏感,但到目前爲止,我們打算使用未加密的數據,但我們確實需要在某個階段加密數據。 – 2013-02-25 09:55:47

+0

顯然你不是很瞭解加密和隱私法律,說敏感數據必須加密(如果美國是你的地方)無知不是法律的藉口。令人遺憾的是,那些不瞭解,不理解也不關心加密敏感數據的重要性,不良應用程序設計的影響以及安全標準缺乏嚴重程度的開發者,這是在欺詐性的銀行交易和身份盜竊中花費我們數十億美元的東西。 – 2013-02-25 17:20:41

相關問題