问题有点令人困惑,但我会解释我在做什么。我正在 Terraform 中构建一个新的 Azure VM,并在虚拟机扩展中调用一个脚本。它是一个基本的 powershell 脚本。问题是,我目前正在从一个公共 GitHub 帐户调用它。
resource "azurerm_virtual_machine_extension" "winrm" {
name = "winrm"
location = var.location
resource_group_name = var.rg_name
count = length(var.vm_name_suffix)
virtual_machine_name = azurerm_virtual_machine.vm[count.index].name
publisher = "Microsoft.Compute"
type = "CustomScriptExtension"
type_handler_version = "1.9"
settings = <<SETTINGS
{
"fileUris": ["https://raw.githubusercontent.com/<name>/master/winrm.ps1"],
"commandToExecute": "powershell.exe -ExecutionPolicy unrestricted -NoProfile -NonInteractive -File \"./winrm.ps1\""
}
SETTINGS
}
试图弄清楚是否有一种方法可以从更安全的地方调用它。我在 Azure DevOps 存储库中进行了此设置,但我不确定如何将任何类型的身份验证传递到设置块中。我也可以将它放在一个私人 GitHub 帐户上,但我需要再次提供一种对文件进行身份验证的方法。