Как использовать AZ CLI для поиска ресурсов Azure, в которых отсутствует определенный тег?

Как использовать AZ CLI для поиска ресурсов Azure, в которых отсутствует определенный тег?

Мне нужно убедиться, что все наши группы ресурсов имеют определенный тег.

Я знаю, что могу использовать политику, чтобы гарантировать, что любой созданный ресурс будет иметь тег, но для существующих ресурсов я пытаюсь придумать запрос с помощью AZ CLI.

В качестве дополнительной проблемы в середине имени тега есть пробел: теперь это «Cost Center» вместо «CostCenter». :-/

решение1

Я бы рекомендовал использоватьГрафик ресурсов Azureдля этого. Граф ресурсов позволяет вам запрашивать все ваши ресурсы Azure, используя язык Kusto либо в CLI, либо на портале.

Чтобы найти имя всех групп ресурсов, не имеющих тега «Центр затрат», можно выполнить такой запрос:

ResourceContainers 
| project name, type, tags 
| where type == 'microsoft.resources/subscriptions/resourcegroups' 
| where tags !contains 'Cost Center' 
| project name

В CLI этот запрос будет выглядеть так:

az graph query -q "ResourceContainers | project name, type, tags | where type == 'microsoft.resources/subscriptions/resourcegroups' | where tags !contains 'Cost Center' | project name"

Связанный контент