敏感信息加密

最近更新时间:2019-04-30 16:07:00

简介

敏感信息加密是密钥管理服务(KMS)核心的能力,实际应用中主要用来保护服务器硬盘上敏感数据的安全(小于4KB),如密钥、证书、配置文件等。
使用 CMK 加密敏感数据信息,而非直接将明文放置到云服务器上。使用时,再将密钥解密到内存,保证明文不落盘。这样,即使云服务器因为个人疏忽而遭受不明人员访问,这些数据信息也不会泄漏。

示意图

敏感信息举例

密钥,证书 后台配置文件
用途 加密业务数据,通信通道,数字签名 保存系统架构和其他业务信息,比如数据库 IP、密码
丢失风险 保密信息被盗、加密通道遭监听、签名被伪造 业务数据被拖库、成为攻击其他系统的跳板

提前规划安全性

敏感信息是访问企业更高机密以及安全通道的钥匙,它本身的安全性尤为重要,所以在公司业务发展的阶段就应该规划其安全性。一个最基本的保护方法就是不要在云服务器硬盘上明文放置敏感信息,而是通过密钥管理服务将它们加密后放置,使用时再解密到内存,保证明文不落盘
这样的好处是即使云服务器因为个人疏忽而遭受不明人员访问,也无法被直接获取明文敏感信息。对于攻击者来说,获取密文信息后还需要再推测密文文件用途、获取解密访问权限以及编写解密程序,这些将大大提高获取明文信息的难度和被发现的可能性。

为什么腾讯云不直接保存您的敏感信息?

安全性提升一个很重要的举措就是权限分离,比如信息的持有权和信息的加密权限分离,将持有权握在自己手上,而腾讯云负责加密相关操作和权限控制,是一种实现简单但有效的安全性提升方法。

操作步骤

保护后台应用配置文件

简要步骤如下:

  1. 准备工作
    • 一台云服务器(CVM)。
    • 一个您熟悉的后台服务框架并部署到云服务器(比如 Python)。
    • 业务使用到的后台应用配置文件,比如一个配置了数据库 IP 和密码的文件。
    • 创建一个 KMS 主密钥,保持启用状态并注意所在地域,可以通过控制台或云 API 来完成。
  2. 生成密文配置文件
    方法1:通过 在线工具 生成。
    方法2:使用 KMS SDK 生成。
    将生成好的密文配置文件放置到您的后台应用可以访问的位置。
  3. 在应用中解密文件并使用
    在您的后台应用中编写代码,读取密文配置文件并通过 KMS SDK 将其解密后使用,示例代码见 SDK 示例代码