Microsoft Defender for Cloudにあるコンプライアンス「Azure Security Benchmark v3」のPV-4に「ゲスト構成拡張機能がマシンにインストールされている必要がある」という項目があります。
ゲスト構成拡張機能の概要 を見てもいまいちよく分からなかったので、実際に試してみました。
概要
-
ゲスト構成拡張機能の概要 ページに
ゲスト構成拡張機能は、仮想マシン内で監査および構成操作を実行する Azure Policy のコンポーネントです
とあります。実際にAzureポリシーの定義を見ると理解が深まりましたので見ていきます。 -
ここで表示される定義がゲスト構成拡張機能で検出できる一覧です。例えばWindowsのユーザーパスワードに関する監査など、仮想マシン内の項目まで検出できることが分かります。
ポリシー割り当て
-
[スコープ]を選択します。デフォルトではサブスクリプションに対してですが、特定のリソースグループのみにすることもできます。また、[除外]の設定で、特定のリソースはポリシー監査の除外にすることも可能です。
-
[修復]タブではデフォルト設定で次にいきます。準拠していなければ準拠するよう自動的に対処する設定ですが、今回は監査したいだけなので不要です。
-
ここまで設定出来たらポリシーを割り当てます。
-
[GCExtensionIdentityMissing]と表示されていると思います。これはVMに拡張機能がインストールされていない且つVMにマネージドID設定がされていない場合に出力されるものです。次に拡張機能をインストールします。
拡張機能インストール
- Cloud Shellを開いてAzure CLIを使います。
- VMにアタッチされている拡張機能を表示します。
az vm extension list -g [Resource Group Name] --vm-name [VM Name] -o table
- 拡張機能をインストールします。
az vm extension set --publisher Microsoft.GuestConfiguration --name ConfigurationforWindows --extension-instance-name AzurePolicyforWindows --resource-group [Resource Group Name] --vm-name [VM Name] --enable-auto-upgrade true
- 再度確認します。[AzurePolicyforWindows]という拡張機能がインストールされていればOKです。
az vm extension list -g [Resource Group Name] --vm-name [VM Name] -o table
マネージドID設定
-
ここまででポリシーの準拠状況を見てみると、[ManagedIdentityMissing]というステータスに変わるはずです(ステータスが変わるまで数時間掛かります)。これは拡張機能はインストールされているが、対象VMのマネージドIDが有効化されていないという意味になります。
監査結果確認
-
[ポリシー]→[コンプライアンス]の画面に戻り該当ポリシーを選択します。
以上