Я только что проверил ваши команды и могу успешно получить группу безопасности приложения с компьютера, на котором настроена ASG. Однако это будет работать только в том случае, если вы поместили виртуальную машину в ASG, ASG обеспечивают микросегментацию внутри подсети, поэтому вы можете группировать серверы приложений, базы данных и т. Д. И применять правила NSG к группам, а не к отдельным серверам. .
Если вместо этого вы хотите узнать, в каком NSG находится виртуальная машина, вам нужна другая команда. NSG - это ресурс, который подключается к ВМ или NIC и действует как брандмауэр. Если вы хотите этого, то вам нужно запустить:
$nsg = $nic | select-object -ExpandProperty NetworkSecurityGroup
Однако это только приведет к тому, что вы примените NSG к ВМ, вы также можете применить их на уровне ВМ, поэтому вам лучше выполнить эту команду:
$effectiveRules=Get-AzureRmEffectiveNetworkSecurityGroup -NetworkInterfaceName <nicName> -ResourceGroupName <resourceGroup>
$effectiveRules.NetworSecurityGroup
В этом списке будут перечислены все NSG, примененные либо на уровне NIC, либо на уровне подсети.