前置代理及加密网关技术
该方案的总体技术思路即在数据库之前增加一道安全代理服务,对数据库访问的用户都必须经过该安全代理服务,在此服务中实现如数据加解密
、存取控制
等安全策略。然后安全代理服务通过数据库的访问接口实现数据存储。
安全代理服务存在于客户端应用与数据库存储引擎之间,负责完成数据的加解密工作,加密数据存储在安全代理服务中。
利弊分析
前置代理及代理网关加密技术,迈不过去的"坎"。
- 由于在安全增强代理中需要存储加密数据,因此要解决与数据库存储数据的一致性问题,这基本不可实现。
- 数据的联合检索问题:由于在数据库内、外都存在数据,这些数据的联合检索将变得很困难;SQL语法的完全兼容也非常困难。
- 数据库协议开发无法透明问题:数据库协议虽然存在标准,但事实上每个不同的数据库版本都会进行若干变更、扩展和增强,使用了这些特性的用户必须进行改造。不同的数据库产品协议可能也不一样。同时在安全代理中对数据库通讯协议的模拟非常困难。
- 数据库的优化处理、事务处理、并发处理等特性都无法使用:查询分析、优化处理、事务处理、并发处理工作都需要在安全增强器中完成,无法使用数据库在并发处理和查询优化上的优势,系统的性能和稳定性更多地依赖于安全代理。
- 存在巨大的工作量和很高的技术复杂度。需要提供非常复杂的数据库管理功能。如:SQL命令解析、通讯服务、加密数据索引存储管理、事务管理等。
- 此外还有对于对存储过程、触发器、函数等存储程序的实现支持也非常困难,基本无法支持。