2011-06-02 62 views
1

我有一個數據庫在一個國家自己的MS SQL服務器。在 中寫入用戶信息服務器中的表意味着信息是公開的。我希望能夠 寫一個表到用戶硬盤驅動器 - 所以這些信息不在服務器上 ,並能夠通過在狀態服務器通過php查詢來顯示圖表。有沒有辦法做到這一點,而不必在用戶機器上安裝任何類型的軟件,如果是這樣,我將不勝感激,如果你可以指向我的程序這樣做。是否可以在用戶的​​本地硬盤上存儲SQL Server表?

+1

這是不可能的,沒有某種hackery。網頁無法使用插件將任意文件寫入用戶的驅動器。至於保持用戶數據私密性的問題,大多數網絡應用程序通過強制執行他們自己的應用程序級訪問控制來管理這個問題 - 只有在用戶的個人硬盤上存在用戶數據時,用戶數據纔是私有的,這種想法是非常規的,至少可以說。 – 2011-06-02 18:39:22

+0

如果您確實有數據非常敏感,以至於無法存儲在中央位置,您可能對「HTML5客戶端存儲」感興趣。不過,我懷疑你的數據真的很敏感。即使您的銀行也願意將您的所有數據存儲在自己的中央服務器上。 – 2011-06-02 18:41:35

回答

0

你真正的問題是數據保密而不是你在哪裏存儲它。請參閱此鏈接:

How to: Encrypt a Column of Data

沒有更多的信息,你正在做的到底是什麼,它是不可能爲你提供一個更具體的答案。

+0

加密不一定是必需的。您可以將未加密的數據保存爲「私人」,只需將其發送給應該能夠看到它的人。 – 2011-06-02 18:57:51

+0

@Frank Farmer,我從OP不希望任何人訪問表格的問題中看到數據。我會想象應用程序將控制誰「看到」數據。 OP似乎擔心的問題是**沒有人能夠控制「sa」用戶查看數據,所以我說加密它。** – 2011-06-02 19:05:00

3

將用戶信息寫入SQL服務器上的表不會使其成爲「公共」。您的代碼將定義誰有權訪問它。

回答您的問題: 您無法在用戶的硬盤上創建數據庫。因此,研究cookies是將信息存儲在用戶硬盤上的唯一選擇。

+0

Cookies不再是唯一的選擇,但它們是支持最廣泛的選項。 HTML5包含新的客戶端存儲,但目前許多瀏覽器都不支持它。 – 2011-06-02 18:56:10

+0

如果OP涉及查看數據的服務器的實際所有者(而不是通過應用程序,但使用SELECT等),那麼您無法「定義誰有權訪問它」。除非加密,否則「sa」用戶可以看到它。 – 2011-06-02 19:14:16

+0

@KM我很難理解這個問題,但是如果情況正確的話。他應該考慮對它進行加密,或者,如果數據非常敏感,它應該放在受信任的服務器上。 – Fase 2011-06-02 19:18:49

0

這確實是實際觸及數據庫的應用程序的功能。 SQL的重點在於數據存儲在服務器上。解決方案是保存某種XML加密或不在本地機器上。

相關問題