背景
数据库明文存储,诸如内部高权用户或侵入数据库服务器的黑客,都可以毫无阻碍地访问数据库的重要数据,一些敏感数据在存储期间的机密性并不能得到有效的保障。
根据信息安全的目标,需要对应用生产数据加密,达到满足安全要求,预防存储层明文泄密,实现自主可控安全。
总体思路
数据库层存储敏感字段为加密,展现层传递应用层为明文传输,应用层接收到明文数据,通过加密应用实现数据加密,实现数据加密存储。加密应用同时提供加密解密api,以及算法、密钥管理。简单设计图如下:
总体思路
加解密实现方式
应用层主要通过切面方式进行数据的加解密,切入点切到数据库入库、查询方法,实现改造代价小,加解密字段可配置的目标。具体的切入思路如下:
加解密实现方式