如何解决NSG规则通过Terraform跨天蓝色订阅
#provider azurem.mgmt is Subscription A.
#prodiver azurem.corpapps is Subscription B.
我正在尝试通过提供者Subscription A
在azurerm.mgmt
中创建nsg规则。这里的destination application security group
与该订阅中的提供者Subscription B
在azurerm.corpapps
中。
provider "azurerm" {
client_id = "${var.client_id}"
client_secret = "${var.client_secret}"
tenant_id = "${var.tenant_id}"
subscription_id = "${var.subscription}"
alias = "mgmt"
}
provider "azurerm" {
client_id = "${var.client_id}"
client_secret = "${var.client_secret}"
tenant_id = "${var.tenant_id}"
subscription_id = "${var.subscription_B}"
alias = "corpapps"
}
但是,我收到错误消息-说未找到ASG:
解决方法
我试图分配在两个订阅上都具有所有者角色的SP,或者使用带有CLI的Azure帐户,但是运气不好。另外,正如评论所指出的那样,有limitation表示NSG在不同位置未引用ASG。经过我的验证后,您不能从另一个订阅中添加ASG,即使它与NSG位于同一区域或以VNet为目标。
此外,当您将此ASG添加为NSG规则中的目标源或目标时,您会看到
选择一个应用程序安全组(ASG)作为安全规则 资源。 ASG启用基于以下功能的细粒度网络安全策略 工作负载或应用程序,而不是IP地址或CIDR块。 指定应用程序安全组的规则仅适用于 属于应用程序安全组成员的网络接口 在同一虚拟网络上。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。