在我实施策略时(尤其是在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接受状态(=似乎很好:)):
问题:但是,当我在Azure门户中检查合规性板时,没有进行扫描。
我想知道按需扫描是否仅适用于某些Azure服务(例如示例中的存储帐户,请参见上面的共享链接),而不适用于其他诸如WebApp,Service Plan等)。
我还想知道按需扫描是否会同时触发策略评估(即使效果不同:拒绝效果) VS deployIfNotExists效果例如)?
有人在按需策略评估扫描中遇到过此类问题吗? :)
谢谢!
答案 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中看到结果之间需要一段时间。