文档

创建和使用加密配置

更新时间:

为了确保敏感配置(数据源、Token、用户名和密码等)的安全性,降低用户配置的泄露风险,Serverless 应用引擎 SAE(Serverless App Engine)提供了创建加密配置的功能。本文介绍如何在SAE控制台创建并使用加密配置。

前提条件

说明

SAE默认支持的ACM进入下线状态,但不影响您现有的使用。建议您直接使用MSE提供的Nacos 2.0配置服务。更多信息,请参见Nacos版本特性

使用限制

使用加解密服务必须使用阿里云账号或RAM用户的AccessKey,不支持使用ACM专用AccessKey。SAE提供的配置加密方法如下:

  • KMS加密:配置内容禁止超过6KB。

  • KMS AES-128加密:配置内容允许超过6KB,建议不超过10KB,最大不超过100KB。配置内容的明文数据不会传输到KMS系统,安全性更高。

创建加密配置

  1. 登录SAE控制台

  2. 在左侧导航栏,单击命名空间,在顶部菜单栏选择地域,然后在命名空间页面,单击目标命名空间名称。

  3. 在目标命名空间页面,单击左侧导航的分布式配置管理,然后单击配置列表

  4. 配置列表页面,单击创建配置

  5. 在弹出的创建配置面板,设置配置项的基本信息。具体操作,请参见管理配置

  6. 单击image图标打开数据加密开关,进行以下设置,然后单击创建

    说明
    • 首次使用此功能时,需单击前往授权前往云资源访问授权页面,并授权ACM使用您的密钥管理服务的权限,以便进行配置数据的加解密。这是因为ACM的数据加密功能依赖于密钥管理服务。

    • 为方便您管理配置,控制台上均显示明文,实际均为加密存储。

    配置项

    说明

    KMS加密

    直接调用KMS服务对配置进行加解密,加解密数据的大小不超过4 KB,最大不超过6 KB,对特殊符号如and(&)会解密错误,不推荐使用。

    KMS AES-128加密

    使用KMS的信封加解密方法,配置内容可以超过6 KB,最大不超过100 KB。配置内容的明文数据不会传输到KMS系统,安全性更高,推荐使用。

使用加密配置

按照以下步骤在控制台获取加密所需的AccessKey ID等初始化参数。

  1. 登录SAE控制台

  2. 在左侧导航栏,单击命名空间,在顶部菜单栏选择地域,然后在命名空间页面,单击目标命名空间名称。

  3. 在目标命名空间页面,单击左侧导航的分布式配置管理,然后单击配置列表

  4. 在配置列表页面,单击AccessKey/SecretKey对应的查看获取方法,获取AccessKey信息。

    image

    说明
    • 在RAM控制台上只能查看AccessKey ID,不支持查看AccessKey Secret,您创建AccessKey成功后请务必保存AccessKey Secret。创建的具体步骤,请参见创建AccessKey

    • 使用阿里云账号的AccessKey ID和AccessKey Secret可直接获取配置数据,建议您填写RAM用户的AccessKey ID和AccessKey Secret。如果使用RAM用户的AccessKey ID和AccessKey Secret,必须提前为其授予AliyunACMFullAccessAliyunKMSCryptoAdminAccess权限。更多信息,请参见为RAM用户授权

  5. 查看示例代码。

    1. 在配置列表页面,单击目标Data ID。

    2. 配置详情页面,单击示例代码页签,然后单击目标语言,获取示例代码。

      说明

      Java和Python的SDK已经整合KMS-SDK,您可以添加解密过滤器来自动解密。其他语言解密,请参见Decrypt