为了确保敏感配置(数据源、Token、用户名和密码等)的安全性,降低用户配置的泄露风险,ACM提供了创建加密配置的功能。

前提条件

  • 开通 ACM 服务
  • 开通密钥管理服务
    注意 为保障数据安全性,ACM使用阿里云密钥管理服务(KMS)来加解密,ACM为您创建的KMS密钥是免费的。KMS服务API调用每位用户每个月有20000次免费额度,您在ACM上每次变更会调用2~3次API,因此免费额度可以支持您每月进行6000多次变更。当KMS API使用量超出后,将会收取0.6元/万次的费用。

创建加密配置

按照以下步骤在控制台创建加密配置。
说明 使用ACM加解密服务必须使用阿里云主账号或子账号的AccessKey,不支持使用ACM专用AccessKey。
  1. 登录ACM控制台,在顶部菜单栏选择地域。
  2. 在左侧导航栏选择配置列表,在页面上方选择命名空间,然后在页面左侧单击创建配置
    创建配置
  3. 创建配置面板打开数据加密开关。
    说明 首次使用此功能时,必须开通密钥管理服务,并授权ACM使用您的密钥管理服务进行加解密,因为ACM数据加密功能依赖密钥管理服务为配置加密。
    1. 数据加密区域单击前往授权
    2. 云资源访问授权页面选择AliyunACMAccessingKMSRole并单击同意授权
    3. 刷新创建配置面板,选择KMS加密方式。
      数据加密方式选择
      参数 描述
      KMS加密 直接调用KMS服务对配置进行加解密,加解密数据的大小不超过4 KB,最大不超过6 KB,对特殊符号如and(&)会解密错误,不推荐使用。
      KMS AES-128加密 使用KMS的信封加解密方法,配置内容可以超过6 KB,最大不超过100 KB。配置内容的明文数据不会传输到KMS系统,安全性更高,推荐使用。
  4. 配置格式区域选择一种配置格式,并在配置内容文本框中输入配置内容,然后单击发布

使用加密配置

按照以下步骤获取使用加密配置的示例代码和初始化参数。

  1. 登录ACM控制台,在顶部菜单栏选择地域。
  2. 在左侧导航栏单击配置列表
  3. 选择目标配置,单击配置的Data ID,然后在配置详情页面单击示例代码
    说明 Java、Python的SDK已经整合KMS-SDK,您可以参考ACM Java Native SDK 概述ACM Python SDK来添加解密过滤器来自动解密。关于其他语言的解密,请参见Decrypt
  4. 配置列表页面查看获取AccessKey和SecretKey等初始化参数的方法。
    说明 使用主账号的AccessKey/SecretKey可直接获取配置数据,但建议您填写RAM用户的AccessKey/SecretKey。如果使用RAM用户的AccessKey/SecretKey,则必须提前为其授予AliyunACMFullAccessAliyunKMSCryptoAccess权限。如需进一步了解,请参见RAM用户

更多信息