gpt4 book ai didi

azure - 如何使用 terraform 在系统分配的身份上添加角色分配?

转载 作者:行者123 更新时间:2023-12-02 06:36:26 25 4
gpt4 key购买 nike

我有一个 ansible 剧本,可以执行此命令来启用系统分配的身份并在特定虚拟机上添加“存储 Blob 数据贡献者”角色。

az vm identity assign 
--name "{{VirtualMachine}}"
--resource-group "{{VirtualMachineRG}}"
--role "Storage Blob Data Contributor"
--scope "/subscriptions/{{AzureSID}}/resourceGroups/{{VirtualMachineRG}}/providers/Microsoft.Compute/virtualMachines/{{VirtualMachine}}

现在,要求是将其移动到 terraform 模板上。我已经探索了 terraform 官方文档,但它缺少有关如何指定添加角色分配的示例。

data "azurerm_subscription" "current" {}

resource "azurerm_linux_virtual_machine" "management_host" {
name = "management-vm"

# ...

identity = {
type = "SystemAssigned"
}
}

output "management_host_identity_object_id" {
value = azurerm_linux_virtual_machine.management_host.identity.0.principal_id
}

最佳答案

有关如何添加角色分配的具体示例可以在此处找到:https://registry.terraform.io/providers/hashicorp/azurerm/latest/docs/resources/role_assignment

在您的示例中,角色分配可能会遵循以下原则(如果您想根据单个存储帐户的范围分配角色):

resource "azurerm_role_assignment" "blob_contributor" {
scope = azurerm_storage_account.your_account.id
role_definition_name = "Storage Blob Data Contributor"
principal_id = azurerm_linux_virtual_machine.management_host.identity[0].principal_id
}

关于azure - 如何使用 terraform 在系统分配的身份上添加角色分配?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/73244213/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com