You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Terraform中从环境变量读取AWS凭证(替换文件方式)

修改方案

直接移除文件传输的逻辑,改用环境变量值在远程主机上生成AWS凭证文件,修改后的代码如下:

provisioner "remote-exec" {
    inline = [
      "mkdir -p .aws",
      "cat > .aws/credentials <<EOF",
      "[default]",
      "aws_access_key_id = ${env.AWS_ACCESS_KEY_ID}",
      "aws_secret_access_key = ${env.AWS_SECRET_ACCESS_KEY}",
      "EOF"
    ]
  }

修改说明

  • 删除了原有的file provisioner,不再通过本地文件传输敏感凭证
  • 调整remote-exec的命令,通过Here Document直接在远程主机的.aws目录下生成credentials文件
  • 利用Terraform的环境变量引用语法${env.变量名},直接读取你已导出的AWS_ACCESS_KEY_ID和AWS_SECRET_ACCESS_KEY值写入凭证文件

内容的提问来源于stack exchange,提问作者kittu

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.14 14:59:51