我正在尝试创建Runbook,以通过Azure自动化Runbook删除对特定NSG组的任何添加。
为了做到这一点,我有以下脚本:
$nsg_item = Get-AzureRmNetworkSecurityGroup -Name $NSG -ResourceGroupName $ResourceGroupName
Write-Output ("NSG content before removal: " + $nsg_item)
Remove-AzureRmNetworkSecurityRuleConfig -Name $rule -NetworkSecurityGroup $nsg_item
执行此操作时,Runbook执行时没有任何问题,脚本的输出显示该规则已被删除 来自NSG。
之前:
SecurityRules:{Port_443,default-allow-ssh,Port_8080
后:
SecurityRules:{Port_443,default-allow-ssh}
但是,如果我继续使用相关的NSG,则该规则仍然存在并启用。我尝试通过Azure中的Powershell CLI运行相同的脚本,同样的事情发生。
知道可能是什么问题吗?
答案 0 :(得分:2)
您需要将结果传递给Set-AzureRmNetworkSecurityGroup
cmdlet:
Remove-AzureRmNetworkSecurityRuleConfig -Name $rule -NetworkSecurityGroup $nsg_item | Set-AzureRmNetworkSecurityGroup