使用 Azure Policy 管理流量分析

Azure Policy 可帮助实施组织标准并大规模评估合规性。 Azure Policy 的常见用例包括实施监管来满足资源一致性、法规遵从性、安全性、成本和管理方面的要求。 若要详细了解 Azure Policy,请参阅什么是 Azure Policy?快速入门:创建策略分配以识别不合规资源

本文介绍如何使用三个适用于 Azure 网络观察程序流量分析的内置策略来管理设置。

使用内置策略审核流日志

网络观察程序流日志应启用流量分析”策略会通过审核类型为 Microsoft.Network/networkWatchers/flowLogs 的 Azure 资源管理器对象来审核所有现有流日志,并检查是否通过流日志资源的 networkWatcherFlowAnalyticsConfiguration.enabled 属性启用了流量分析。 然后,此策略会标记将该属性设置为 false 的流日志资源。

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

  1. 登录到 Azure 门户

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

    在 Azure 门户中搜索策略的屏幕截图。

  3. 选择“分配”,然后选择“分配策略”。

    在 Azure 门户中选择“分配策略”按钮的屏幕截图。

  4. 选择“范围”旁边的省略号“...”,再选择具有待审核策略的流日志的 Azure 订阅。 还可以选择具有流日志的资源组。 进行选择之后,选择“选择”按钮。

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

  5. 选择“策略定义”旁边的省略号“...”,再选择要分配的内置策略。 在搜索框中输入“流量分析”,然后选择“内置”筛选器。 从搜索结果中选择“网络观察程序流日志应启用流量分析”,然后选择“添加”。

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

  6. 在“分配名称”中输入名称,在“分配者”中输入你的姓名。 此策略不需要任何参数。

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

    Azure 门户中用于分配审核策略的“基本信息”选项卡的屏幕截图。

    注意

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

  8. 选择“合规性”。 搜索你的分配名称,然后将其选中。

    显示 Azure 门户中审核策略的“合规性”页面屏幕截图。

  9. “资源合规性”列出所有不合规的流日志。

    显示 Azure 门户中审核策略详细信息的屏幕截图。

使用 deployIfNotExists 策略部署和配置流量分析

有两个 deployIfNotExists 策略可用于配置 NSG 流日志:

  • 将网络安全组配置为使用特定工作区、存储帐户和流日志保留策略进行流量分析:此策略标记未启用流量分析的网络安全组。 对于已标记的网络安全组,要么相应的 NSG 流日志资源不存在,要么 NSG 流日志资源存在但未启用流量分析。 如果你希望该策略影响现有资源,可以创建修正任务。

    可以在分配策略时或者在分配并评估策略后分配修正。 修正将使用提供的参数对所有已标记的资源启用流量分析。 如果网络安全组已在特定存储 ID 中启用流日志,但未启用流量分析,则修正会使用提供的参数在此网络安全组上启用流量分析。 如果参数中提供的存储 ID 与为流日志启用的存储 ID 不同,则会在修正任务中,将后者的存储 ID 覆盖为提供的存储 ID。 如果不想覆盖,请使用“配置网络安全组以启用流量分析”策略。

  • 配置网络安全组以启用流量分析:此策略与前一策略类似,只是在修正期间,不会覆盖已启用流日志但使用策略分配中提供的参数禁用了流量分析的已标记网络安全组的流日志设置。

注意

网络观察程序是一项区域性服务,因此两个 deployIfNotExists 策略将应用于特定区域中存在的网络安全组。 对于不同区域中的网络安全组,请在此区域创建另一个策略分配。

若要分配 deployIfNotExists 两个策略之一,请执行以下步骤:

  1. 登录到 Azure 门户

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

    在 Azure 门户中搜索策略的屏幕截图。

  3. 选择“分配”,然后选择“分配策略”。

    在 Azure 门户中选择“分配策略”按钮的屏幕截图。

  4. 选择“范围”旁边的省略号“...”,再选择具有待审核策略的流日志的 Azure 订阅。 还可以选择具有流日志的资源组。 做出选择后,选择“选择”按钮。

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

  5. 选择“策略定义”旁边的省略号“...”,再选择要分配的内置策略。 在搜索框中输入“流量分析”,然后选择“内置”筛选器。 在搜索结果中,选择“将网络安全组配置为使用特定工作区、存储帐户和流日志保留策略进行流量分析”,然后选择“添加”。

    在 Azure 门户中选择 deployIfNotExists 策略的屏幕截图。

  6. 在“分配名称”中输入名称,在“分配者”中输入你的姓名。

    在 Azure 门户中分配部署策略的“基本信息”选项卡的屏幕截图。

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

    设置
    效果 选择“DeployIfNotExists”。
    网络安全组区域 选择策略所针对的网络安全组的区域。
    存储资源 ID 输入存储帐户的完整资源 ID。 存储帐户必须与网络安全组位于同一区域中。 存储资源 ID 的格式为:/subscriptions/<SubscriptionID>/resourceGroups/<ResourceGroupName>/providers/Microsoft.Storage/storageAccounts/<StorageAccountName>
    流量分析处理间隔(分钟) 选择将已处理日志推送到工作区的频率。 目前,可用值为 10 分钟和 60 分钟。 默认值为 60 分钟。
    工作区资源 ID 输入必须在其中启用流量分析的工作区的完整资源 ID。 工作区资源 ID 的格式为:/subscriptions/<SubscriptionID>/resourcegroups/<ResourceGroupName>/providers/microsoft.operationalinsights/workspaces/<WorkspaceName>
    工作区区域 选择流量分析工作区的区域。
    工作区 ID 输入流量分析工作区 ID。
    网络观察程序资源组 选择网络观察程序的资源组。
    网络观察程序名称 输入网络观察程序的名称。
    流日志的保留天数 输入要在存储帐户中保留流日志数据的天数。 如果要永久保留数据,请输入 0。

    注意

    流量分析工作区的区域不必与目标网络安全组的区域相同。

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

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

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

    注意

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

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

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

  10. 选择“合规性”。 搜索你的分配名称,然后将其选中。

    显示 Azure 门户中部署策略的合规性页面屏幕截图。

  11. 选择“资源合规性”以获取所有不合规流日志的列表。

    显示 Azure 门户中部署策略详细信息的屏幕截图。

疑难解答

修正任务失败并出现 PolicyAuthorizationFailed 错误代码:示例错误示例“策略分配 /subscriptions/abcdef01-2345-6789-0abc-def012345678/resourceGroups/DummyRG/providers/Microsoft.Authorization/policyAssignments/b67334e8770a4afc92e7a929/ 资源标识没有创建部署所需的权限”。

在这种情况下,必须手动为托管标识授予访问权限。 转到相应的订阅/资源组(包含策略参数中提供的资源),并为策略创建的托管标识授予参与者访问权限。