
# 使用密钥进行OBS服务端加密
密码安全中心（Data Encryption Workshop）是一个综合的云上数据加密服务。它提供的密钥管理（Key Management Service，KMS）是一种安全、可靠、简单易用的密钥托管服务，帮助用户集中管理密钥，保护密钥安全。
您可以通过KMS创建密钥，并使用创建的密钥将OBS服务端中上传的文件进行加密。
#### 操作流程
| 操作步骤                                          | 说明                                    |
|:---|:---|
| [准备工作]          | 注册华为账号、开通华为云，为账户充值、赋予KMS操作权限。         |
| [步骤一：创建桶]       | 桶是对象存储中存储对象的容器。您需要先创建一个桶，然后才能在桶中存储数据。 |
| [步骤二：创建密钥]      | 通过KMS创建密钥，并使用创建的密钥将OBS服务端中上传的文件进行加密。  |
| [步骤三：上传文件到OBS桶] | 上传文件到OBS桶，并使用KMS密钥对桶文件进行加密。           |
   
 #### 准备工作
1. 在开始操作前，请先注册华为账号并开通华为云。具体操作详见[注册华为账号并开通华为云](https://support.huaweicloud.com/usermanual-account/account_id_001.html)、[实名认证](https://support.huaweicloud.com/usermanual-account/zh-cn_topic_0071343161.html)。
   如果您已开通华为云并进行实名认证，请忽略此步骤。
   
2. 请保证账户有足够的资金，才能正常使用OBS等相关资源。具体操作请参见[账户充值](https://support.huaweicloud.com/usermanual-billing/bills-topic_30000002.html)。
3. 请确保已为账号拥有KMS CMKFullAccess及以上权限。具体操作请参见[创建用户组并授权使用DEW](https://support.huaweicloud.com/usermanual-dew/dew_01_0135.html)。
   表1KMS系统角色 
   | 角色名称                  | 描述                                            | 类别   | 依赖关系 |
   |:---|:---|:---|:---|
   | KMS Administrator     | 密钥管理服务(KMS)管理员，拥有该服务下的所有权限。                   | 系统角色 | 无    |
   | KMS CMKFullAccess     | 密钥管理服务(KMS)的加密密钥所有权限。拥有该权限的用户可以完成基于策略授权的所有操作。 | 系统策略 | 无    |
   | KMS CMKReadOnlyAccess | 密钥管理服务(KMS)的加密密钥只读权限。拥有该权限的用户可以完成基于策略授权的所有操作。 | 系统策略 | 无    |
      
   
 
 #### 步骤一：创建桶
桶是对象存储中存储对象的容器。您需要先创建一个桶，然后才能在桶中存储数据。
1. [登录OBS服务管理控制台](https://auth.huaweicloud.com/authui/login.html?service=https://console.huaweicloud.com/console/?locale=zh-cn&cloud_route_state=/obs/manager/buckets#/login)。
2. 单击右上角"创建桶"，创建一个桶，用于存储上传的文件。具体操作请参见[创建桶](https://support.huaweicloud.com/qs-obs/obs_qs_0002.html#section3)。
 
 #### 步骤二：创建密钥
以创建"AES-256"对称密钥为例进行介绍。
创建的密钥只能在当前选择的区域使用，如需在其它区域使用，请切换到对应区域进行创建或者使用区域性密钥。
1. [登录DEW服务控制台](https://console.huaweicloud.com/dew/?locale=zh-cn#/dew/)。
2. 在密钥管理页面，单击界面右上角"创建密钥"。
3. 进入"创建密钥"页面，完成如下必要参数配置，其余参数保持默认值即可，参数说明请参见[表2]。
   图1创建密钥
   ![](https://support.huaweicloud.com/qs-dew/zh-cn_image_0000002216092964.png)
   
    表2必要参数说明 
   | 参数     | 示例                  | 说明                                                                                                                                                                                                                                                                                       |
   |:---|:---|:---|
   | 密钥名称   | **KMS-d90a**        | 自定义密钥名称，不可为空。                                                                                                                                                                                                                                                                            |
   | 密钥算法   | **AES-256**         | KMS支持的密钥算法类型及算法描述，详见[KMS支持的密钥算法类型](https://support.huaweicloud.com/usermanual-dew/dew_01_7775.html)。                                                                                                                                                                                     |
   | 密钥用途   | **ENCRYPT_DECRYPT** | 该值配置后不支持修改。 对于AES_256对称密钥，默认值"ENCRYPT_DECRYPT"。                                                                                                                                                                                                     |
   | 密钥托管类型 | **平台托管**            | KMS支持两种密钥托管类型： - 平台托管：由KMS生成的密钥材料。  - 外部BYOK：使用客户本地的密钥材料。创建后需要导入密钥材料。   |
      
   
4. 单击"确定"，在页面右上角弹出"创建密钥成功"，则说明密钥创建完成。用户可在密钥列表上查看已完成创建的密钥，密钥默认状态为"启用"。
 
 #### 步骤三：上传文件到OBS桶
上传文件到OBS桶，并使用KMS密钥对桶文件进行加密。
1. 单击[步骤一：创建桶]中创建的桶的名称，进入桶的详细信息页面。
2. 在"对象"页面，单击"上传对象"，在上传对象页面完成如[图2]配置，参数说明如[表3]所示。
   图2上传对象
   ![](https://support.huaweicloud.com/qs-dew/zh-cn_image_0000002257246157.png)
    表3必要参数说明 
   | 参数     | 示例                                                                           | 说明                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
   |:---|:---|:---|
   | 存储类别   | **继承桶类别**                                                                    | 指定对象的存储类别。如果不指定，默认与桶的存储类别一致。 - **标准存储**：适用于有大量热点文件或小文件，且需要频繁访问（平均一个月多次）并快速获取数据的业务场景。  - **低频访问存**储：适用于不频繁访问（平均一年少于12次），但需要快速获取数据的业务场景。  - **归档存储**：适用于很少访问（平均一年一次），且对数据获取速率要求不高的业务场景。  - **深度归档存储**：适用于很少访问，访问频率低于归档存储，且对数据获取速率要求不高的业务场景。   |
   | 上传对象   | -                                                                            | 拖拽本地文件或文件夹至"上传对象"区域框内添加待上传的文件。 也可以通过单击"上传对象"区域框内的"添加文件"，选择本地文件进行添加。                                                                                                                                                                                                                                                                                                                                                                                               |
   | 服务端加密  | ![](https://support.huaweicloud.com/qs-dew/zh-cn_image_0000002257209173.png) | 开启服务端加密后，上传到当前桶的对象会被加密。                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
   | 加密模式   | **SSE-KMS**                                                                  | KMS服务生成和保管密钥，OBS使用密钥加密对象。                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
   | 加密密钥类型 | **自定义密钥** **AES256/KMS-335c**                        | 选择加密密钥类型。 此处，选择[步骤二：创建密钥]中创建的密钥类型。                                                                                                                                                                                                                                                                                                                                                                                                     |
      
   
3. 单击"确定"。
 
