質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.46%
Azure

Azureは、マイクロソフトのクラウド プラットフォームで、旧称は Windows Azureです。PaaSとIaaSを組み合わせることで、 コンピューティング・ストレージ・データ・ネットワーキング・アプリケーションなど多くの機能を持ちます。

Q&A

解決済

1回答

651閲覧

[至急]Azureの仮想マシン(VirtualMachines)に紐づいているセキュリティグループの一覧を出力したい

kazuyakunnn

総合スコア2

Azure

Azureは、マイクロソフトのクラウド プラットフォームで、旧称は Windows Azureです。PaaSとIaaSを組み合わせることで、 コンピューティング・ストレージ・データ・ネットワーキング・アプリケーションなど多くの機能を持ちます。

0グッド

0クリップ

投稿2021/07/12 08:37

編集2021/07/15 08:50

###Azureの仮想マシン(VirtualMachines)に紐づいているセキュリティグループの一覧を出力する方法があれば知りたいです。

実現したい事
Azureの仮想マシンを数百台使っているのですが、それに紐づいているセキュリティグループを管理(把握)できていない状況なので、AzureのCLIで出力出来たりしませんかね?
また、セキュリティグループのインバウンドルールの一覧も出力したいなと思っています。

よろしくお願いいたします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

複数のリソースから情報を取得したうえで、必要な情報をマージして一覧を作ることになりますので、Azure CLI よりもリソースグラフのクエリの方が簡単かなと考えました。

仮想マシンのネットワークインターフェースにネットワークセキュリティグループを紐づけている場合、リソースグラフで次のようなクエリを実行するとこで、仮想マシンのプライマリのインターフェースに紐づいているネットワークセキュリティグループを一覧化できます。なお、本クエリですとサブネットに紐づいているネットワークセキュリティグループは一覧化されません。ご注意ください。

Resources | where type =~ 'microsoft.compute/virtualmachines' | extend nics=array_length(properties.networkProfile.networkInterfaces) | mv-expand nic=properties.networkProfile.networkInterfaces | where nics == 1 or nic.properties.primary =~ 'true' or isempty(nic) | project resourceGroup, vmName = name, vmId = id, vmSize=tostring(properties.hardwareProfile.vmSize), nicId = tostring(nic.id) | join kind=leftouter ( Resources | where type =~ 'microsoft.network/networkinterfaces' | extend ipConfigsCount=array_length(properties.ipConfigurations) | mv-expand ipconfig=properties.ipConfigurations | where ipConfigsCount == 1 or ipconfig.properties.primary =~ 'true' | project nicId = id, nicName = name) on nicId | join kind=leftouter ( Resources | where type == 'microsoft.network/networksecuritygroups' | project id, name, properties.networkInterfaces | mv-expand networkInterfaces=properties_networkInterfaces | project nicId = tostring(networkInterfaces.id), nsgId = id, nsgName = name) on nicId | project vmName, nicName, nsgName

参考:仮想マシンとそのネットワーク インターフェイスおよびパブリック IP を一覧表示する

イメージ説明

投稿2021/07/17 01:24

kongou-ae

総合スコア432

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.46%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問