文档

存储加密

更新时间:

当MaxCompute项目中存有敏感信息如个人身份信息、财务记录、健康记录等,开启数据存储加密可保护这些数据不被未授权者访问。MaxCompute支持通过密钥管理服务KMS(Key Management Service)对数据进行加密存储,提供数据静态保护能力,满足企业监管和安全合规需求。

存储加密机制

MaxCompute通过KMS托管密钥,实现数据存储加密或解密功能。数据存储加密机制如下:

  • MaxCompute以项目为单位,通过KMS加密或解密存储在MaxCompute的数据。

  • KMS生成和管理您的主密钥CMK(Customer Master Key),并保障密钥的安全性。

  • MaxCompute支持的加密算法为AES256、AESCTR和RC4。

  • MaxCompute支持通过默认密钥(MaxCompute Default Key)和自带密钥(BYOK)加密或解密数据。

    • 创建MaxCompute项目空间时,您可以选择密钥MaxCompute Default Key

      MaxCompute会在KMS上自动创建1个密钥作为CMK。您可以通过KMS控制台查看自动创建的密钥信息。

    • 为满足不同场景的业务和安全需求,MaxCompute支持通过自带密钥(BYOK)加密或解密数据。

      通过自带密钥(BYOK)加密或解密数据时,您需要手动开通KMS,开通后您可以通过KMS创建特定的密钥,即自带密钥(BYOK),并在创建MaxCompute项目空间时,选择该密钥作为CMK。在KMS上创建CMK的详情请参见CreateKey

      说明

      如果项目使用自带密钥(BYOK),您在创建MaxCompute项目空间时,需要根据界面提示,完成RAM授权,以便MaxCompute可以正常创建使用自带密钥(BYOK)的项目空间。

  • MaxCompute支持通过RAM自定义权限策略管控新建项目是否加密,策略内容详情请参见权限策略

费用说明

MaxCompute自身的数据存储加密功能不收取费用,但MaxCompute在数据加密或解密过程中会与KMS服务的API交互。KMS服务会产生一定费用,计费详情请参见KMS服务计费说明

使用限制

MaxCompute的数据存储加密功能使用限制如下:

  • 开启存储加密功能的项目,仅支持版本为V1.1及以上的Hologres外部表访问查询数据且需在开启存储加密功能前给Hologres授予KMS权限,详情请参见查询MaxCompute加密数据(BYOK模式)

  • 如果您使用自带密钥(BYOK)加密或解密数据,您需要根据当前MaxCompute项目所在地域情况,在要求的地域内手动开通KMS。MaxCompute地域和待开通的KMS地域对应关系如下。

    MaxCompute所在地域

    KMS地域

    华东1(杭州)、华东2(上海)、华北2(北京)、华北3(张家口)、华南1(深圳)、西南1(成都)

    华东2(上海)

    除上述地域外的其他地域

    与MaxCompute所在地域保持一致

  • 您在KMS上对自带密钥(BYOK)的操作(例如禁用或删除),会影响MaxCompute对数据的加密或解密操作。由于MaxCompute服务涉及缓存,您在KMS的相关操作会在24小时内生效。

  • 目前不支持对已经创建的项目变更存储加密功能:关闭存储加密功能或更改存储加密的算法。

  • 存量项目新开通存储加密,不会自动对存量数据进行加密(不影响正常读写操作),如果需要对存量数据加密,需要手工读出数据再写入。

操作步骤

新建项目开通存储加密

  • 方式一:在MaxCompute控制台上创建项目开通存储加密。

    1. 进入密钥管理服务开通页,选中密钥管理服务服务协议,单击立即开通,开通KMS服务。开通KMS

      说明

      如果您所在区域已开通KMS服务,可跳过该步骤。

    2. 登录MaxCompute控制台,在左上角选择地域。

    3. 在左侧导航栏,选择工作区 > 项目管理

    4. 项目管理页面,单击新建项目

    5. 新建项目对话框,根据界面提示配置参数。

      如下参数需重点关注。

      参数

      说明

      计算资源付费类型

      默认计算Quota的计费类型。

      默认Quota

      用于实现计算资源分配。

      不指定计算Quota的情况下,该项目发起的作业将消耗默认Quota资源。更多计算资源使用请参见计算资源使用

      单SQL消费限制

      单SQL消费的最高阈值。

      单位:扫描量(GB)*复杂度。非必填项,当选择按量付费计费类型时建议设置,可以避免非预期的单SQL消费过高。同时也建议配置实时消费监控告警,多方位监控限制消费超出预期,详情请参见消费监控告警消费控制

      数据类型

      MaxCompute数据类型包含1.0数据类型2.0数据类型Hive兼容类型

      您需要根据业务情况选择合适的数据类型版本,三种数据类型版本的区别请参见数据类型版本说明

      是否加密

      选择需要加密,指定创建的MaxCompute项目开启数据存储加密功能,需要选择密钥和对应算法:

      • 密钥:项目空间使用的密钥类型,包含默认密钥(MaxCompute Default Key)和自带密钥(BYOK)。默认密钥(MaxCompute Default Key)是MaxCompute内部创建的默认密钥。

      • 算法:密钥支持的加密算法,包含AES256、AESCTR和RC4。

    6. 单击确定,完成新建项目。

  • 方式二:在DataWorks里开启MaxCompute数据存储加密功能。

    1. 进入密钥管理服务开通页,选中密钥管理服务服务协议,单击立即开通,开通KMS服务。开通KMS

      说明

      如果您所在区域已开通KMS服务,可跳过该步骤。

    2. 登录DataWorks控制台,在左侧导航栏,单击工作空间列表

    3. 工作空间列表页面上方选择区域后,单击创建工作空间。在创建工作空间面板,配置基本配置信息,单击提交,详情请参见创建MaxCompute项目

    4. 工作空间创建完成后,DataWorks为您提供了常用引擎的绑定入口,可直接进行引擎绑定操作,选择MaxCompute后的立即绑定

    5. 配置引擎详情信息。选中加密,开启数据存储加密功能。

      引擎详情

      分类

      参数

      MaxCompute

      资源显示名

      • 用于定义当前引擎配置在DataWorks作为一个执行计算引擎实例的显示名称,用于在DataWorks上标识该套引擎配置(类似于该引擎在DataWorks的别名)。

      • 您可以自定义该显示名称。 名称必须唯一。

      项目来源

      默认为创建项目。

      付费模式

      定义MaxCompute项目按照哪种付费方式进行计费,包括按量付费包年包月。 关于MaxCompute计费模式详情请参见计费项与计费方式概述

      说明

      标准模式下不支持添加开发者版本的实例。

      Quota组

      定义MaxCompute项目使用的计算资源池。关于Quota相关说明详情请参配额

      数据类型

      定义MaxCompute项目使用哪一类数据类型。包括2.0数据类型(推荐)1.0数据类型(面向已有使用1.0数据类型用户)和Hive兼容类型(面向Hive迁移用户),详情请参见:数据类型版本说明

      是否加密

      指定创建的项目空间是否需要开启数据存储加密功能。

      项目名称

      长度为3~27个字符,以字母开头,且只能包含字母、下划线(_)和数字。

      调度访问身份

      DataWorks任务提交调度后,作为在MaxCompute项目内执行代码的身份(账号)。

      阿里云子账号

      当前登录账号。

    6. 单击完成绑定,完成创建。

      开启数据存储加密功能后,MaxCompute会自动完成项目数据读写过程中的加密或解密操作。

存量项目开通存储加密

  • 注意事项:

    • 开通存储加密需修改MaxCompute项目基础属性的参数,此操作权限通过RAM进行鉴权,需要拥有对应项目的Super_Administrator角色权限。

    • 配置MaxCompute项目的权限属性和IP白名单的参数,需要拥有对应项目的管理权限(Admin)角色包括Super_Administrator、Admin或自定义管理类权限,详情请参见项目管理类权限一览表

    • 只支持未开通存储加密的项目开通存储加密,已经开通存储加密的项目不允许关闭存储加密和更改加密算法。

  • 操作步骤:

    1. 登录MaxCompute控制台,在左上角选择地域。

    2. 在左侧导航栏,选择工作区 > 项目管理

    3. 项目管理页面,单击目标项目操作列的管理

    4. 项目配置页面的参数配置页签,单击基础属性区域的编辑

    5. 存储加密状态选择需要加密

    6. 加密设置对话框,选择密钥算法后单击确定

      • 密钥:项目空间使用的密钥类型,包含默认密钥(MaxCompute Default Key)和自带密钥(BYOK)。默认密钥(MaxCompute Default Key)是MaxCompute内部创建的默认密钥。

      • 算法:密钥支持的加密算法,包含AES256、AESCTR和RC4。

    7. 单击提交,完成存量项目开通存储加密功能。

相关文档

  • 您还可以使用基于ACL和角色管理的方式,实现对Project级别、表级别的授权,保证只有经过授权的用户才能访问数据,详情请参见ACL权限控制

  • 当项目用户具备查询敏感数据的权限,但又不希望看到完整的敏感数据信息,可以对查询结果进行数据动态脱敏,详情请参见数据动态脱敏

  • 当仅需要对表中部分数据进行加密,可使用MaxCompute提供的加密函数,详情请参见加密函数

  • 本页导读 (1)
文档反馈