环境变量可以分离函数代码和配置信息,提高代码的灵活性和可移植性。使用函数计算的环境变量可以动态地将配置信息传递给函数代码,能避免将配置信息写死到函数代码中。环境变量以键值对的方式存储,是函数配置的一部分。不同函数可以拥有不同的环境变量,并且互不影响。

安全性

在配置环境变量后,环境变量将在函数运行时配置到所在的操作系统环境中。函数代码可以使用读取系统环境变量的方式来获取到设置的具体值并在代码中使用。

创建或者更新环境变量时,函数计算会对您的环境变量使用AES256(Advanced Encryption Standard 256)标准加密存储,在运行函数时自动反向解密,您无需担心自己的数据安全。

使用场景

  • 跨平台或服务部署

    同一份代码,在测试环境和生产环境运行时的配置可能有差异。例如,您可以通过环境变量的方式选择使用不同的对象存储OSS的Bucket、数据库或者表格。函数在不同平台部署时无需更改代码。

  • 配置密钥

    连接数据库的用户名和密码、您的阿里云AccessKey、或者其他有安全敏感性的认证信息都可以通过环境变量设置。

  • 配置系统变量

    在配置PATH和HOME等目录时能够更灵活地使用系统库。

使用限制

  • 字符集规则
    • Key的字符集:必须以[a-zA-Z]开头,只能包含[a-zA-Z0-9_]。
    • Value的字符集:必须是可显示的ASCII字符,不能包含中文等其他字符。
  • 数量限制

    所有环境变量的大小不能超过4 KB。

  • 系统预留变量

    为避免系统混淆,您不能使用函数计算系统预留的环境变量。系统预留变量包括FC_*accessKeyIDaccessKeySecretsecurityTokentopic