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

说明 使用ACM加解密服务必须使用阿里云主账号或子账号的AccessKey,不支持使用ACM专用AccessKey。

前提条件

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

创建加密配置

按照以下步骤在控制台创建加密配置。

  1. 登录 ACM 控制台,并在页面左上角选择所需地域。
  2. 配置列表页面右侧单击+按钮。
  3. 新建配置页面上打开数据加密开关。
    说明 首次使用此功能时,必须开通密钥管理服务,并授权ACM使用您的密钥管理服务进行加解密,因为ACM数据加密功能依赖密钥管理服务为配置加密。
  4. 开通数据加密相关服务对话框中执行以下步骤。
    1. (如已开通密钥管理服务则跳过此步)单击立即开通。在云产品开通页页面上,勾选我已阅读并同意《密钥管理服务服务协议》,并单击立即开通
    2. 单击立即授权。在云资源访问授权页面上,勾选目标权限,并单击同意授权
  5. 新建配置页面的数据加密开关后选择加密方式。
    • KMS加密:直接调用KMS服务对配置进行加解密,加解密数据的大小不超过4 KB,最大不超过6 KB,对特殊符号如and (&)会解密错误,不推荐使用。
    • KMS AES-128加密:使用KMS的信封加解密方法,配置内容可以超过6 KB,最大不超过100 KB。配置内容的明文数据不会传输到KMS系统,安全性更高,推荐使用。
  6. 配置格式区域框中选择一种配置格式,并在配置内容文本框中输入配置内容,然后单击发布
    说明 为方便您管理配置,控制台上均显示明文,但实际都是加密存储的。

使用加密配置

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

  1. 登录 ACM 控制台,并在页面左上角选择所需地域。
  2. 配置列表页面单击列表右侧操作列的示例代码,即可获取示例代码。
    说明 Java、Python的SDK已经整合KMS-SDK,您可以添加解密过滤器来自动解密。关于其他语言的解密,请参见Decrypt
  3. 单击列表上方的详情,并在命名空间详情对话框中单击获取来获取AccessKey、SecretKey等初始化参数。
    说明 使用主账号的AccessKey/SecretKey可直接获取配置数据,但建议您填写RAM用户的AccessKey/SecretKey。如果使用RAM用户的AccessKey/SecretKey,则必须提前为其授予AliyunACMFullAccessAliyunKMSCryptoAccess权限。如需进一步了解,请参见RAM用户

更多信息