【发布时间】:2012-05-08 18:05:34
【问题描述】:
我想创建一个使用 PostgreSQL 作为数据库的 Web 应用程序。我希望对数据库进行加密,这样即使是对数据库服务器具有 root 访问权限的攻击者也无法解密数据(或者至少他将不得不处理 hard)。我不关心架构,只关心表的内容。
我也不想将解密密钥存储在应用程序服务器的某个位置(既不在配置文件中,也不在硬编码中)。
相反,我的想法是使用用户通过 Web 应用程序提供并在运行时解密的密钥来加密整个数据库(或者只是表和行?)。
这种情况在 PostgreSQL 中是否可行?我有哪些选项可以实现?
旁注:这是一个基于 .NET 的应用程序 (ASP.NET MVC3),我使用的是 Npsql 驱动程序。
【问题讨论】:
-
那么,您将拥有拥有密钥的«那个»用户?或者任何用户都应该能够提供密钥?
-
是的,让一个用户只有一个键是可以的。
标签: postgresql encryption