5-结构化配置示例进阶
上一篇文章已经基本实现了项目配置结构化,但是还有个问题,那就是ak sk 放在了命令行执行,这样不仅繁琐,还有安全问题。
推荐的安全做法:
1. 使用 terraform.tfvars
(最常见)
在项目根目录新建文件:terraform.tfvars
access_key = "你的AK"
secret_key = "你的SK"
security_group_id = "sg-xxxxx"
vswitch_id = "vsw-xxxxx"
然后直接运行
terraform apply
Terraform 会自动加载 terraform.tfvars
。
好处:避免命令行暴露,项目更好移交给团队使用。
建议:不要把 terraform.tfvars
上传到 Git,可以放 .gitignore
。
2. 使用环境变量(推荐)
Terraform 的阿里云 Provider 支持从环境变量读取 AK/SK:
然后 main.tf
里 可以省略 provider 里的 access_key
和 secret_key
配置:
👉 好处:CI/CD 环境(如 Jenkins, GitLab CI)更安全,可以在「凭据管理」里设置环境变量。