web-dev-qa-db-ja.com

terraformコードファイルからパスワードを除外する方法

AzureでAzureSQLサーバーを作成しています。

私は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
}

このファイルをソース管理にチェックインしたくありません。

管理者のユーザー名とパスワードを環境変数に取り込むためのテラフォームの方法はありますか?

1
dagda1

展開の設定方法によって異なります。パスワード(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/

1
Jordy