Azure策略评估触发器-按需评估扫描问题

时间:2020-04-01 09:06:22

标签: azure azure-functions azure-web-app-service azure-monitoring azure-policy

在我实施策略时(尤其是在App Services Plan和WebApp上),我需要快速测试策略的新规则。我尝试使用以下URI结构通过REST API POST命令对资源启动按需扫描:

POST https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.PolicyInsights/policyStates/latest/triggerEvaluation?api-version=2018-07-01-preview

cf。 https://docs.microsoft.com/fr-fr/azure/governance/policy/how-to/get-compliance-data

该呼叫返回202接受状态(=似乎很好:)):

enter image description here

问题:但是,当我在Azure门户中检查合规性板时,没有进行扫描。

  1. 我想知道按需扫描是否仅适用于某些Azure服务(例如示例中的存储帐户,请参见上面的共享链接),而不适用于其他诸如WebApp,Service Plan等)。

  2. p>
  3. 我还想知道按需扫描是否会同时触发策略评估(即使效果不同:拒绝效果) VS deployIfNotExists效果例如)?

有人在按需策略评估扫描中遇到过此类问题吗? :)

谢谢!

2 个答案:

答案 0 :(得分:1)

正如Kemley所指出的,直到合规性扫描完成后,门户网站才会反映出来。以我的经验,门户网站可能需要几分钟来反映更新。

此Microsoft博客在这里很好地总结了策略评估扫描所需的时间:https://msftplayground.com/2019/06/on-demand-azure-policy-scan/

下面是该文章的摘录。

对以下事件进行政策评估:

* New policy assignment. ( ~30 minutes).
* Updated assignment of a existing policy. (~ 30 minutes)
* Deployment of a resources. (~15 minutes)
* Every 24 hours
* Update of the resource provider
* On-demand (~3 minutes)

您还可以在此处找到隐藏在官方Microsoft Azure文档中的扫描时间估算值(但它不如上面的链接那么明确):https://docs.microsoft.com/en-us/azure/governance/policy/how-to/get-compliance-data#evaluation-triggers

对于调用REST API的按需评估扫描,“ 202接受”状态表示扫描已触发,但并不表示扫描已完成。

扫描完成后,您将收到HTTP 200状态代码。当您触发扫描时,响应消息将在响应标题消息的“位置”字段中包含一个URI。您可以查询该URI来检查扫描状态(可以将HTTP 202解释为扫描仍在运行,而HTTP 200已完成扫描)。

我的经验是,状态扫描显示完成时已评估并返回了所有策略效果,但是我没有看到官方文档。另外,我的经验是,要反映在Portal中的合规性结果有时还要花费Portal额外的3到5分钟(我推测这取决于环境的大小/扫描范围),但是Microsoft不提供或与此相关的特定SLA。

Microsoft最近提供了Azure CLI和Azure PowerShell命令来触发按需策略评估扫描。这些命令记录在这里:https://docs.microsoft.com/en-us/azure/governance/policy/how-to/get-compliance-data#on-demand-evaluation-scan

答案 1 :(得分:0)

在完成合规性扫描之前,不会在门户上更新合规性结果,因此从启动扫描到在Portal中看到结果之间需要一段时间。