Azure
如何將密碼保存在 terraform 程式碼文件之外
我正在 azure 中創建一個 azure sql 伺服器:
我有一個
variables.tf
目前具有管理員密碼的文件:variable "sql_server_admin_password" { description = "admin password" default = "xxxx" }
然後我在主文件中引用它:
resource "azurerm_sql_server" "main" { name = var.sql_server_name resource_group_name = azurerm_resource_group.main.name location = azurerm_resource_group.main.location version = "12.0" administrator_login = var.sql_server_admin_login administrator_login_password = var.sql_server_admin_password }
我不想將此文件簽入原始碼管理。
是否有將管理員使用者名和密碼放入環境變數的 terraform 方法?
取決於您的部署的設置方式。您可以生成密碼 (random_password) 並將其安全地儲存在密鑰庫中,並在部署 SQL 時進一步引用它。您還可以引用現有的 keyvault 機密作為您的密碼。
Terraform 中與此相關的一些連結:
在 Terraform 中創建密鑰庫:https ://www.terraform.io/docs/providers/azurerm/r/key_vault.html
從現有 Azure Key Vault 獲取機密: https ://www.terraform.io/docs/providers/azurerm/d/key_vault_secret.html
可以在此處找到與 Azure Key Vault 相關的資訊:https ://azure.microsoft.com/en-us/services/key-vault/