AZ CLI を使用して、特定のタグが欠落している Azure リソースを見つけるにはどうすればよいですか?

AZ CLI を使用して、特定のタグが欠落している Azure リソースを見つけるにはどうすればよいですか?

すべてのリソース グループに特定のタグが付いていることを確認する必要があります。

作成されたリソースにタグが付くようにポリシーを使用できることはわかっていますが、既存のリソースについては、AZ CLI を使用してクエリを作成しようとしています。

追加の課題として、タグの名前の真ん中にスペースがあります。つまり、「CostCenter」ではなく「Cost Center」です。 :-/

答え1

使用をお勧めしますAzure リソース グラフこのため、リソース グラフを使用すると、CLI またはポータルで Kusto 言語を使用してすべての Azure リソースをクエリできます。

「コスト センター」タグを持たないすべてのリソース グループの名前を検索するには、次のようなクエリを実行します。

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"

関連情報