使用 Azure Policy 审核 Azure Web PubSub 服务资源的合规性
Azure Policy 是 Azure 中的一项免费服务,用于创建、分配和管理强制执行规则和效果的策略,以确保资源始终符合公司标准和服务水平协议。 使用这些策略审核 Web PubSub 资源是否合规。
本文介绍了 Azure Web PubSub 服务的内置策略。
内置策略定义
下表包含 Azure Web PubSub 的 Azure Policy 内置策略定义的索引。 有关其他服务的 Azure Policy 内置定义,请参阅 Azure Policy 内置定义。
每个内置策略定义链接(指向 Azure 门户中的策略定义)的名称。 使用“版本”列中的链接查看 Azure Policy GitHub 存储库上的源。
名称 (Azure 门户) |
说明 | 效果 | 版本 (GitHub) |
---|---|---|---|
Azure Web PubSub 服务应禁用公用网络访问 | 禁用公用网络访问可确保 Azure Web PubSub 服务不会在公共 Internet 上公开,从而提高安全性。 创建专用终结点可以限制 Azure Web PubSub 服务的公开。 有关详细信息,请访问:https://aka.ms/awps/networkacls。 | Audit、Deny、Disabled | 1.0.0 |
Azure Web PubSub 服务应使用支持专用链接的 SKU | 使用受支持的 SKU 时,Azure 专用链接可让你在源或目标位置没有公共 IP 地址的情况下,也可以将虚拟网络连接到 Azure 服务。 专用链接平台处理使用者与服务之间通过 Azure 主干网络进行的连接。 通过将专用终结点映射到 Azure Web PubSub 服务,可以降低数据泄露风险。 有关专用链接的详细信息,请访问:https://aka.ms/awps/privatelink。 | Audit、Deny、Disabled | 1.0.0 |
配置 Azure Web PubSub 服务以禁用公用网络访问 | 禁用对 Azure Web PubSub 资源的公用网络访问,确保无法通过公共 Internet 对其进行访问。 这样可以减少数据泄露风险。 有关详细信息,请访问:https://aka.ms/awps/networkacls。 | 修改,已禁用 | 1.0.0 |
将 Azure Web PubSub 服务配置为使用专用 DNS 区域 | 使用专用 DNS 区域来替代专用终结点的 DNS 解析。 专用 DNS 区域会链接到虚拟网络,以解析到 Azure Web PubSub 服务。 有关详细信息,请访问:https://aka.ms/awps/privatelink。 | DeployIfNotExists、Disabled | 1.0.0 |
使用专用终结点配置 Azure Web PubSub 服务 | 在没有公共 IP 地址的情况下,专用终结点可在源或目标位置将虚拟网络连接到 Azure 服务。 通过将专用终结点映射到 Azure Web PubSub 服务,可以降低数据泄露风险。 有关专用链接的详细信息,请访问:https://aka.ms/awps/privatelink。 | DeployIfNotExists、Disabled | 1.0.0 |
分配策略定义
分配策略定义时:
- 可以使用 Azure 门户、Azure CLI、资源管理器模板或 Azure Policy SDK 来分配策略定义。
- 可以将策略分配的范围限定为资源组、订阅或 Azure 管理组。
- 可以随时启用或禁用策略实施功能。
- Web PubSub 策略分配适用于范围内现有和新的 Web PubSub 资源。
注意
在分配或更新某个策略后,需要花费一些时间才会将分配应用到所定义作用域中的资源。 请查看有关策略评估触发器的信息。
查看策略合规性
可以使用 Azure 门户、Azure 命令行工具或 Azure Policy SDK 来访问策略分配生成的合规性信息。 有关详细信息,请参阅获取 Azure 资源的合规性数据。
有多种可能的原因会导致资源不合规。 若要确定原因或查找导致问题的变更,请参阅确定不合规情况。
门户中的策略合规性:
- 打开 Azure 门户,搜索“策略”。
- 选择“策略”。
- 选择“合规性”。
- 使用筛选器按“范围”、“类型”或“符合性状态”进行显示。 使用“按名称或 ID 搜索列表”。
- 选择一个策略来查看聚合合规性详细信息和事件。
- 选择特定 Web PubSub 以确保资源合规。
Azure CLI 中的策略合规性
可使用 Azure CLI 来获取合规性数据。 使用 az policy assignment list 命令获取应用的 Azure Web PubSub 服务策略的策略 ID:
az policy assignment list --query "[?contains(displayName,'Web PubSub')].{name:displayName, ID:id}" --output table
示例输出:
Name ID
------------------------------------------------------------------------------------- --------------------------------------------------------------------------------------------------------------------------------
[Preview]: Azure Web PubSub Service should use private links /subscriptions/<subscriptionId>/resourceGroups/<resourceGroup>/providers/Microsoft.Authorization/policyAssignments/<assignmentId>
运行 az policy state list 命令,以便返回特定资源组下所有资源的 JSON 格式合规性状态:
az policy state list --g <resourceGroup>
运行 az policy state list 命令,以返回特定 Web PubSub 资源的 JSON 格式的合规性状态:
az policy state list \
--resource /subscriptions/<subscriptionId>/resourceGroups/<resourceGroup>/providers/Microsoft.SignalRService/WebPubSub/<resourceName> \
--namespace Microsoft.SignalRService \
--resource-group <resourceGroup>