OBS服务端加密
应用场景
对象存储服务(Object Storage Service,OBS)是一个基于对象的海量存储服务,为客户提供海量、安全、高可靠、低成本的数据存储能力。
密钥管理服务(Key Management Service,KMS)是一种安全、可靠、简单易用的密钥托管服务,帮助用户集中管理密钥,保护密钥安全。KMS提供信封加密能力,无需通过网络传输大量数据即可完成数据加解密。
KMS可以对OBS桶内对象进行全量加密或者部分加密,在OBS服务使用KMS加密过程中,信封加密方式有效保障了数据传输的加密性、数据解密的效率和便捷性,在对象上传和下载过程中,保证信息安全:
![点击放大](https://support.huaweicloud.com/bestpractice-dew/zh-cn_image_0000001948228872.png)
- 全量加密:指对OBS桶内上传的所有对象进行加密。此时,需要先对OBS桶加密,然后对桶里的对象进行加密。
步骤1:开启OBS桶加密。具体操作请参见OBS桶加密:创建OBS桶时开启服务端加密功能或者OBS桶加密:为已创建的OBS桶开启加密。
步骤2:选择加密方式,对桶中的对象进行加密。
您可以选择“继承桶加密配置”加密方式,此时桶中的对象和OBS桶采用相同的加密策略;也可以根据需要选择“SSE-KMS加密”或“SSE-OBS加密”方式对OBS桶中上传的对象进行加密。具体操作请参见上传对象加密(SSE-KMS加密方式)。
- 部分加密:指对OBS桶内上传的部分对象进行加密。此时,不需要对OBS桶进行加密,直接对OBS桶中的对象进行加密。
具体操作请参见上传对象加密(SSE-KMS加密方式)。
方案架构
OBS中上传对象的加解密原理说明如下:
约束与限制
- SM4加密算法仅支持华北-乌兰察布一区域。
- 使用中的密钥不可以删除,如果删除将导致加密对象不能下载。
上传对象加密(SSE-KMS加密方式)
- 在OBS管理控制台桶列表中,单击待操作的桶,进入“概览”页面。
- 在左侧导航栏,单击“对象”。
- 单击“上传对象”,系统弹出“上传对象”对话框。
- 单击“添加文件”,选择待上传的文件后,单击“打开”。
- 在服务端加密行,选择目标加密方式,选择完成后,在下方的选择框中选择默认密钥或者自定义密钥,如图6所示。
图7 加密上传对象(未开启OBS桶加密)
- 如果对象所在的OBS桶已开启加密,可在服务端加密行选择继承桶的加密配置,与OBS桶使用同样的加密配置进行上传对象的加密。
- 如果对象所在的OBS桶未开启加密,可选择先开启OBS桶加密,或者直接使用“SSE-KMS”加密方式加密上传对象。
- 对象上传成功后,可在对象列表中查看对象的加密状态。
- 对象的加密状态不可以修改。
- 使用中的密钥不可以删除,如果删除将导致加密对象不能下载。
通过调用API实现服务端加密方式上传对象
用户也可以通过调用OBS API接口,选择服务端加密SSE-KMS方式(SSE-KMS方式是指OBS使用KMS提供的密钥进行服务端加密)上传文件,详情请参考《对象存储服务API参考》。