Terraform-如何避免在Terraform脚本中输入VM密码

时间:2019-10-07 13:14:50

标签: terraform

有没有一种方法可以避免在虚拟机管理员用户的Terraform脚本中输入密码?

我不想将密码放入脚本并将其检入存储库。

1 个答案:

答案 0 :(得分:1)

Terraform支持将变量传递到脚本:

variable "vm_password" {
  description = "Your VM password"
}

这些可以通过前缀为TF_VAR_的环境变量(例如TF_VAR_vm_password)传递。或者,您可以传递一个tfvars文件(当然您也不会检入),该文件可以使用-var-file标志(例如terraform apply -var-file=myvars.tfvars)传递给terraform。如果未指定这些参数,则执行terraform apply将提示您手动输入变量。

请注意,机密仍已签入Terraform状态文件。因此,请确保将Terraform状态文件存储在安全的位置,或者采取其他措施对状态文件进行加密。