我是否可以以下列所有陈述均为真的方式设置Oracle数据库
a)某些列,可能所有列都已加密,因此对数据库文件的直接文件访问不允许攻击者检索任何记录
b)对授权用户透明地解密加密列,其中授权用户例如拥有某种角色或特权
c)具有执行“正常”管理任务(调整,创建/删除模式对象,重新启动数据库,从数据字典中选择)的可设置权限的管理员可以选择表,但只能在加密列中看到加密数据.
如果可以,我该怎么做.如果不可能,我有什么选择至少要“接近”这些要求?
a)b)似乎可以使用Oracle透明数据加密,但我不确定c)
最佳答案 透明数据加密仅执行(a).这是为了防止数据泄露发生,因为有人偷了硬盘或备份,或者对DBF文件运行字符串.这仍然有用,因为它可以防止使用其特权操作系统访问权限的系统管理员绕过所有数据库安全性.
如果要强制执行类似(b)的操作,则适当的技术是虚拟专用数据库 – 如果您拥有其他许可证,则使用DBMS_RLS版企业版或Oracle Label Security版.
如果要实现(c),您将需要Oracle的Database Vault product,这在Enterprise License之上也是一个额外费用.
由于TDE需要高级安全选项,因此这些选项相当于EE许可证的75%(*)附加费.在这种情况下你也可以去破产并购买Audit Vault!
(*)如果您购买Label Security,则只有50%.