使用 Azure Policy 管理 NSG 流日志

重要

网络安全组(NSG)流日志将于 2027 年 9 月 30 日停用。 2025 年 6 月 30 日之后,将无法再创建新的 NSG 流日志。 建议迁移到虚拟网络流日志,这些日志解决了 NSG 流日志的限制。 退休日期后,将不再支持 NSG 流日志中启用的流量分析功能,订阅中的现有 NSG 流日志资源也将被删除。 但是,不会从Azure Storage中删除现有的 NSG 流日志记录,并且将继续遵循其配置的保留策略。 有关详细信息,请参阅 官方公告

Azure Policy可帮助你强制实施组织标准并大规模评估合规性。 Azure Policy的常见用例包括实施资源一致性治理、法规合规性、安全性、成本和管理。 若要了解有关Azure policy的详细信息,请参阅 什么是 Azure Policy?Quickstart:创建策略分配来标识不合规的资源

本文介绍如何使用两个内置策略来管理网络安全组 (NSG) 流日志的设置。 第一个策略标记任何未启用流日志的网络安全组。 第二个策略自动部署未启用流日志的 NSG 流日志。

使用内置策略审核网络安全组

应为每个网络安全组配置 Flow 日志策略通过检查类型为 Microsoft.Network/networkSecurityGroups 的所有Azure Resource Manager对象来审核范围中的所有现有网络安全组。 然后,此策略通过网络安全组的流日志属性检查链接的流日志,并标记任何未启用流日志的网络安全组。

若要使用内置策略审核流日志,请执行以下步骤:

  1. 登录到 Azure 门户

  2. 在门户顶部的搜索框中,输入policy。 从搜索结果中选择“策略”

    截图演示了如何在 Azure portal 中搜索 Azure Policy。

  3. 选择任务,然后选择分配策略

    在 Azure 门户中选择用于分配策略的按钮的截图。

  4. 选择 省略号 (...), 位于 Scope 旁边,以选择包含您想要审核的网络安全组策略的 Azure 订阅。 还可以选择具有网络安全组的资源组。 做出选择后,选择“选择”按钮。

    在 Azure 门户中选择策略范围的截图。

  5. 选择“策略定义”旁边的省略号 (...),然后选择要分配的内置策略。 在搜索框中输入“流日志”,然后选择“内置”筛选器。 在搜索结果中,选择“应为每个网络安全组配置流日志”,然后选择“添加”。

    在 Azure 门户中选择审核策略的截图。

  6. 在“任务名称”中输入名称,然后在“指派人”中输入你的姓名。

    此策略不需要任何参数。 它也不包含任何角色定义,因此无需在“修正”选项卡中为托管标识创建角色分配。

  7. 选择“查看 + 创建”,然后选择“创建”。

     在 Azure 门户中,用于分配审核策略的“基础”选项卡的截图。

  8. 选择“合规性”。 搜索你的任务名称,然后选择它。

    “合规性”页的屏幕截图,其中显示了审核策略判定为不合规的资源。

  9. 选择“资源合规性”以获取所有不合规网络安全组的列表。

    “合规性”页的屏幕截图,其中显示了审核策略判定为不合规的资源。

使用内置策略部署和配置 NSG 流日志

部署具有目标网络安全组的流日志资源策略通过检查所有类型为 Microsoft.Network/networkSecurityGroups 的Azure资源管理器对象,来审核范围内的所有现有网络安全组。 然后,它通过网络安全组的流日志属性检查链接的流日志。 如果该属性不存在,则策略将部署流日志。

若要分配 deployIfNotExists 策略,请执行以下操作:

  1. 登录到 Azure 门户

  2. 在门户顶部的搜索框中,输入policy。 从搜索结果中选择“策略”

    截图演示了如何在 Azure portal 中搜索 Azure Policy。

  3. 选择任务,然后选择分配策略

    在 Azure 门户中选择用于分配策略的按钮的截图。

  4. 选择 省略号 (...), 位于 Scope 旁边,以选择包含您想要审核的网络安全组策略的 Azure 订阅。 还可以选择具有网络安全组的资源组。 做出选择后,选择“选择”按钮。

    在 Azure 门户中选择策略范围的截图。

  5. 选择“策略定义”旁边的省略号 (...),然后选择要分配的内置策略。 在搜索框中输入“流日志”,然后选择“内置”筛选器。 在搜索结果中,选择“使用目标网络安全组部署流日志资源”,然后选择“添加”。

    在 Azure portal 中选择部署策略的截图。

  6. 在“任务名称”中输入名称,然后在“指派人”中输入你的姓名。

    在 Azure 门户的 Basics 选项卡中分配部署策略的截图。

  7. 选择“下一步”按钮两次,或者选择“参数”选项卡。然后输入或选择以下值:

    设置
    NSG 区域 选择要将策略应用到的网络安全组的区域。
    存储 ID 输入存储帐户的完整资源 ID。 存储帐户必须与网络安全组位于同一区域中。 存储资源 ID 的格式为 /subscriptions/<SubscriptionID>/resourceGroups/<ResourceGroupName>/providers/Microsoft.Storage/storageAccounts/<StorageAccountName>
    网络观察 RG 选择Azure Network Watcher实例的资源组。
    Network Watcher name 输入Network Watcher实例的名称。

    用于在 Azure 门户中分配部署策略的参数选项卡的屏幕截图。

  8. 选择“下一步”或“修正”选项卡。输入或选择以下值:

    设置
    创建修正任务 如果你希望策略影响现有资源,请选中该复选框。
    创建托管身份 选中复选框。
    托管标识类型 选择要使用的托管标识的类型。
    系统分配的标识位置 选择系统分配标识的区域。
    范围 选择用户分配标识的范围。
    现有的用户分配标识 选择用户分配的标识。

    注意

    你需要“参与者”或“所有者”权限才能使用此策略。

    Azure 门户中用于分配部署策略的修正选项卡的屏幕截图。

  9. 选择“查看 + 创建”,然后选择“创建”。

  10. 选择“合规性”。 搜索你的任务名称,然后选择它。

    “合规性”页的屏幕截图,其中显示了部署策略判定为不合规的资源。

  11. 选择“资源合规性”以获取所有不合规网络安全组的列表。

    “策略合规性”页面的屏幕截图,其中显示了不合规的资源。

  12. 让策略保持运行,以评估并部署所有不合规网络安全组的流日志。 然后再次选择“资源合规性”以检查网络安全组的状态(如果策略已完成修正,将不会显示不合规的网络安全组)。

    “策略合规性”页面的屏幕截图,其中显示所有资源都是合规的。