有奖捉虫:行业应用 & 管理与支持文档专题 HOT
本文以业务应用使用云数据库 MySQL 场景为例,介绍从0开始接入云访问安全代理(Cloud Access Security Broker,CASB)的基本流程。
本例中,接入前业务应用使用如下信息访问数据库,表中存在三个敏感字段namephoneaddress,数据库中的敏感字段明文存储。
IP: 172.16.48.7
Port: 3306
User: root
Password: db123456
Database: casbtestdb
Table: casbtesttable


步骤1:接入准备

1. 服务及账号授权。
1.1 开通密钥管理系统(KMS)服务并完成 KMS 对云访问安全代理服务的角色授权,详情请参见 使用 KMS 加密并授权
1.2 账号授权及策略配置,详情请参见 账号授权管理
2. 创建 CASB 实例。 登录 云访问安全代理(CASB)控制台 实例列表页,单击新建,进入 CASB 实例购买页面,并根据业务需求购买相应的功能。详情请参见 购买方式
3. 本例中,使用的 CASB 实例信息如下。


步骤2:绑定代理和数据库

1. 新建元数据,将数据库添加到 CASB 的元数据中。详情请参见 添加云元数据

2. 采集元数据表结构,将数据库的表结构信息更新到 CASB 元数据中。详情请参见 元数据表结构管理


3. 绑定元数据到 CASB 代理,将元数据绑定到 CASB 代理的某个端口。详情请参见 代理资源管理
说明
本例中,将创建的 metadata_demo 元数据库绑定到了代理的10103端口,代理的访问地址为172.16.0.48:10103

4. 创建访问代理地址的账号密码。详情请参见 创建代理账号
说明:
本例中,对代理地址172.16.0.48:10103创建了casbroot账号,密码为casb123456

5. 验证代理的绑定状态。 到此为止,CASB 已将完成数据库和代理的绑定,应用此时可通过 CASB 代理访问数据库。
说明:
数据库的连接信息为: mysql -h172.16.48.7 -P3306 -uroot -pdb123456 casbtestdb
代理的连接信息为: mysql -h172.16.0.48 -P10103 -ucasbroot -pcasb123456 casbtestdb

6. 因尚未配置数据库的字段加解密策略,此时 CASB 代理相当于是透明代理。

步骤3:配置加密策略

1. 确认字段长度和编码类型是否满足密文存储需求。
根据参考文档 密文长度计算,计算各字段中明文加密后的最大密文长度,若最大密文长度大于当前的字段长度定义,需调整字段长度大小。本例中各字段长度定义已足够存储密文,不对字段长度定义进行修改。
注意:
长度变更后,需重新采集元数据表结构。
加密字段需使用区分大小写collation,如 utf8_general_bin
2. 配置字段加密策略,详情请参见 创建策略
说明:
本例中,对nameaddress 字段使用SM4加密,phone字段使用AES加密,并分别用了key1,key2,key3三个不同的密钥。

3. 验证字段加密效果。
通过代理,写入明文数据。
通过代理,读取到新写入的数据和历史的数据均为明文。
直连数据库,读取到新写入的数据为密文。

4. 存量数据加密,创建全量加密任务并启动后,CASB 后台会自动对存量的明文数据进行加密。详情请参见 创建全量加密任务

5. 全量加密任务执行完成后,直连数据库查询,所有数据均为密文。通过代理查询,所有数据均为明文。


步骤4:配置脱敏策略

1. 创建代理账号casbroot访问代理时的脱敏策略,详情请参见 新建脱敏策略
说明:
本例中,name字段使用了内置的中文姓名脱敏算法,phone字段使用了内置的保留前三后三脱敏算法,address字段使用了内置的置空脱敏算法。

2. 验证脱敏效果。 配置脱敏策略后,再使用casbroot通过代理访问数据库时,namephoneaddress三个字段返回的数据均已进行了相应的脱敏,业务无法获取原始明文信息。


3. 至此,业务应用已完成加解密和脱敏功能的接入。安全组配置、访问控制、数据库操作审计、敏感数据识别等更多功能配置和使用,请参见 CASB 文档