2012-05-08 30 views
1

我想創建一個使用PostgreSQL作爲數據庫的Web應用程序。我想要加密數據庫,以便即使是對數據庫服務器具有根訪問權的攻擊者也無法解密數據(或者至少他將不得不混淆臨時內存數據,即)。我不關心架構,只關心表格的內容。加密PostgreSQL數據庫並從Web應用程序用戶獲取密鑰

我也不想在一些地方保存解密密鑰的應用服務器(無論是在配置文件,也沒有硬編碼)。

相反,我的想法是將整個數據庫(或只是表和行?)使用由用戶在Web應用程序提供和解密在運行時密鑰來加密。

這種情況可能與PostgreSQL和我有哪些實現這個選項?

邊注:這是一個基於.NET的應用程序(ASP.NET MVC3)和我使用的Npsql驅動程序。

+0

那麼,你將擁有一個「密鑰」的用戶?或者任何用戶應該能夠提供密鑰? – vyegorov

+0

是的,只有一個用戶擁有一個密鑰是可以的。 –

回答

1

加密使用pgcrypto。但是,超級用戶可以控制日誌文件並告訴數據庫記錄每件事情,每個查詢。這將包括查詢包括您的密碼。

你可能想使用SELinux和SEPostgreSQL

相關問題