Logic Apps で Azure Resource Graph クエリを実行
はじめに
Logic Apps で Azure リソースのパラメータや Defender for Cloud の推奨事項を取得したいケースがあります。この際、Azure Resource Graph クエリを実行することが一般的で参考ドキュメントも準備されています。しかしながら、操作画面がなく、イメージがしづらいので補足として記事にまとめます。
参考
設定手順
Logic Apps の画面で [+Create] をクリック

従量課金を利用するため [マルチテナント] を選択

サブスクリプション、リソース名、ロジック アプリ名などを入力し、 [確認および作成] をクリックし、デプロイ

作成後、ID を選択して [システム割り当て済み] タブで [オン] に切り替え、[保存] をクリック > ダイアログで [はい] をクリック


[Azure ロールの割り当て] をクリック

[+ロールの割り当ての追加] をクリックし、スコープ:サブスクリプションとして 閲覧者 ロールを付与して保存

検証のため、トリガーは適当に設定 (画像では Request を利用)

Azure Resource Graph クエリを実行するため、[HTTP] コネクタを選択、以下のように各パラメータを設定

| 項目 | 設定値 |
|---|---|
| URI | https://management.azure.com/providers/Microsoft.ResourceGraph/resources |
| Method | POST |
| Headers | Content-Type application/json |
| Queries | api-version 2021-03-01 |
| Body | { "query": "securityresources | where type == 'microsoft.security/assessments' | take 10" } |
| Cookie | (空欄) |
| 詳細パラメーター | Authentication を ON |
| Authentication type | Managed Identity |
| マネージド ID | システム割り当てマネージド ID |
| Audience | (空欄) |
[Save] をクリックし、[Run] でテスト実行します。

結果確認
[実行履歴] から結果を確認します。正常に Azure Resource Graph クエリで結果が取得できていることが分かります。

まとめ
本記事では Logic Apps で Azure Resource Graph クエリを実行する方法を整理しました。こちらによって、Azure リソースの情報を加工しメールや Teams に通知するなどの仕組みをノーコードで作成することが可能になります。
Discussion