开发者社区 > 云原生 > Serverless > 正文

函数计算accessKey之类的变量,如何设置,又不想用KMS?

函数计算accessKey之类的变量,如何设置,又不想用KMS?

展开
收起
三分钟热度的鱼 2024-02-28 14:36:44 64 0
3 条回答
写回答
取消 提交回答
  • 在不使用KMS的情况下,可以通过以下几种方式来设置函数计算的accessKey等敏感变量:

    1. 使用访问控制RAM:通过阿里云的访问控制RAM(Resource Access Management),您可以创建RAM用户并为它们分配最小必要权限,从而避免与其他用户共享云账号密钥(AccessKey)。
    2. 配置环境变量:在函数计算控制台中,您可以设置环境变量来存储accessKey等敏感信息。登录函数计算控制台,选择需要的服务,点击服务配置->修改配置,在环境变量部分添加相应的键值对。
    3. 使用临时密钥:如果您使用的是函数计算的临时密钥,那么临时密钥里所属的权限就是服务角色里的权限。如果不配置服务角色,那临时密钥将为空,也就没有权限了。
    4. 使用命令行工具fcli:通过阿里云提供的函数计算命令行工具fcli,您可以在本地直接配置YAML文件,其中可以包含您的Account IDAccessKeyIDAccessKeySecret。这样可以在不使用KMS的情况下管理和操作函数计算资源。
    5. 使用配置文件:可以将accessKey等敏感信息存储在配置文件中,并在函数中读取该配置文件来获取这些信息。配置文件应该放在安全的位置,并且只有授权的用户才能访问。
    6. 使用加密存储:虽然不是使用KMS,但也可以考虑使用其他加密工具或服务来安全地存储accessKey。例如,可以使用开源的加密库来加密存储在数据库或文件中的敏感信息。
    7. 使用角色策略:在函数计算控制台中,可以为服务角色配置必要的权限策略,确保函数在执行时具有适当的权限。这样可以避免在代码中直接使用accessKey,而是通过角色策略来控制权限。
    8. 使用系统环境变量:在某些情况下,您也可以将accessKey设置为系统环境变量,然后在函数中通过读取环境变量的方式来获取这些信息。但这种方法的安全性相对较低,因为系统环境变量可能会被其他进程访问。

    总的来说,您可以通过上述方法来设置和管理函数计算中的accessKey等敏感变量,而不使用KMS。在选择方法时,应考虑到安全性、便利性以及与现有系统的兼容性。

    2024-02-29 23:41:13
    赞同 展开评论 打赏
  • 阿里云大降价~

    在函数计算中设置accessKey之类的变量,而不使用KMS,您可以通过以下步骤进行:

    1. 获取AccessKey信息:登录函数计算控制台,在概览页的常用信息区域查看Account ID和AccessKey ID。您也可以在RAM管理控制台中创建或查看AccessKey信息。
    2. 配置环境变量:在函数计算控制台的服务及函数页面,选择目标服务,然后点击目标函数的操作列中的配置。在编辑函数配置页面的环境变量区域,选择配置环境变量的方式,输入您的AccessKey ID和AccessKey Secret,然后保存。
    3. 使用系统默认服务角色:如果您不想手动设置AccessKey,可以使用函数计算提供的系统默认服务角色AliyunFCDefaultRole,该角色包含了函数计算需要访问的部分云资源权限。您可以在服务配置中绑定该角色,并为其添加必要的策略以满足权限需求。
    4. 注意安全性:请确保您的AccessKey Secret保密,不要在不安全的环境中泄露此信息。AccessKey ID和AccessKey Secret是用于验证用户身份的重要凭证,应当妥善保管。
    5. 临时密钥的使用:如果您使用的是函数计算的临时密钥,那么临时密钥里所属的权限就是服务角色里的权限。如果不配置服务角色,那临时密钥将为空,也就没有权限了。因此,确保服务角色配置了正确的权限是非常重要的。

    总的来说,通过上述步骤,您可以在不使用KMS的情况下,为您的函数计算服务配置必要的访问密钥和权限。

    2024-02-29 19:59:43
    赞同 展开评论 打赏
  • 在函数代码中设置 accessKey

    如果您不想使用 KMS,可以在函数代码中直接设置 accessKey。但是,这种方式不推荐,因为 accessKey 会暴露在代码中,存在安全风险。

    推荐做法:

    使用环境变量来存储 accessKey。环境变量不会暴露在代码中,因此更加安全。

    设置环境变量的方法:

    1. 在函数配置页面,找到 环境变量 区域。
    2. 点击 新建 按钮。
    3. 输入环境变量的 名称,例如 ACCESS_KEY
    4. 输入环境变量的 ,例如您的 accessKey。
    5. 点击 确定 按钮保存更改。

    在函数代码中获取环境变量:

    import os
    
    access_key = os.environ.get("ACCESS_KEY")
    

    注意:

    • 环境变量的大小限制为 4096 字节。
    • 环境变量的名称必须以字母开头,只能包含字母、数字和下划线。

    参考文档:

    安全提示:

    • 即使使用环境变量,也不要将 accessKey 存储在代码的公共仓库中。
    • 定期轮换 accessKey 以降低安全风险。
    2024-02-28 15:38:42
    赞同 展开评论 打赏

快速交付实现商业价值。

相关产品

  • 函数计算
  • 相关电子书

    更多
    Hologres Serverless之路:揭秘弹性计算组 立即下载
    Serverless开发平台: 让研发效能再提升 立即下载
    Serverless 引领云上研发新范式 立即下载