Effective Security Rulesを理解するための前提
Effective security rulesはNetwork Watcherの機能で、NICに適用されるinbound/outbound ruleを集約して表示する。 NIC NSGとsubnet NSGだけでなく、Azure Virtual Network Manager security admin rulesも実効viewへ含まれる。
「NSG resourceにruleがある」ことと「対象NICにそのruleが効いている」ことを区別するための基本証拠になる。 address prefix展開を確認できるため、service tag/ASG/default ruleの思い込みを減らせる。
Effective rulesはrule setの可視化であり、routing、Firewall/NVA、guest OS、application responseまでのend-to-end成功を証明しない。 flow-specificなAllow/Deny原因はNSG diagnostics/IP Flow Verifyと組み合わせる。
Control plane と data plane
仕組み
対象VMの実NICを特定する。
Effective security rulesをInbound/Outboundそれぞれ取得する。
subnet NSG、NIC NSG、security admin ruleのsourceを区別する。
対象5-tupleに関係するprefix/port/protocol/actionを絞る。
NSG diagnosticsまたはnew connectionで実flowを確認し、必要ならrouting/Firewallへ進む。
Packet / decision path
障害時はresource一覧ではなく、同じsource/destination/port/protocolで各enforcement pointを順に追います。
- VM/NICをsource of truthとしてeffective viewを取得する。
- before/afterでCSV/JSONを保存し、rule resource差分ではなくeffective差分も比較する。
- service tag/ASGは展開結果を確認する。
- 管理baselineとしてsecurity admin ruleがある環境では必ず含めて読む。
- end-to-end判定はNext hop/Connection troubleshoot/application testまで続ける。
設計判断
| 判断点 | 推奨 | 理由 |
|---|---|---|
| Audit | 各critical NICのeffective stateを定期取得してbaselineと比較する。 | orphan NSGやassociation driftを検出しやすい。 |
| Troubleshooting | configured rule searchより先にNIC effective viewを取る。 | 複数NSG/admin ruleの見落としを減らす。 |
| Scope | source NICだけでなくdestination側のenforcement pointも確認する。 | 通信は両端のpolicyに影響される。 |
| Evidence | 時刻、NIC resource ID、direction、5-tupleを記録する。 | 再現性のあるincident evidenceになる。 |
確認手順
Azure Portal / Network Watcher
- Network Watcher → Effective security rules → Subscription/RG/VM/NICを選択。
- Inbound/Outboundを分けて対象ruleを開き、associated prefixesを確認。
- 必要に応じCSV downloadでchange前後を比較。
Verification discipline
- subscription / resource group / resource ID / NIC / direction / 5-tupleを記録する。
- 同じ条件でbefore/afterを比較し、既存sessionとnew connectionを区別する。
- configuration、effective state、logs、application resultを別々の証拠として残す。
- 変更成功はcontrol-plane Succeededではなくobservable data-plane behaviorで判定する。
az network nic list-effective-nsg -g <rg> -n <nic> -o jsonc
az network nsg rule list -g <rg> --nsg-name <nsg> -o tableGet-AzEffectiveNetworkSecurityGroup -ResourceGroupName <rg> -NetworkInterfaceName <nic>
障害切り分け
| 症状 | 疑う点 | 証拠 | 次の確認 |
|---|---|---|---|
| NSGにAllowがあるのにeffectiveでDeny | 別NSG/admin rule/association | effective sourceごとのrule | denying enforcement pointを修正 |
| effective取得できない | NIC/VM state、権限、Network Watcher context | resource stateとRBAC | 対象resource/regionを再確認 |
| effectiveはAllowだが通信不可 | route/Firewall/guest OS/application | Next hop/Connection troubleshoot/socket | security rule以外へ切り分け |
| service tag範囲が予想外 | tagの実効prefix/connected network | effective detail | 固定CIDR前提をやめる |
変更時の確認と rollback
- 変更前effective outputをartifactとして残す。
- rollback後に同じNIC/5-tupleでeffective viewとnew-flow testを取り直す。
What changed recently
NSG flow logsは新規作成できず、2027-09-30にretire予定です。新しい可視化設計はVNet flow logsを前提にし、既存NSG flow logsは移行計画を持たせます。