Set-AzureRmApiManagementPolicy : ValidationError: Resource was modified since last retrieval

Set-AzureRmApiManagementPolicy : ValidationError: Resource was modified since last retrieval

当我尝试调用 Set-AzureRmApiManagementPolicy PowerShell commandlet 来更新 Azure API 管理中的策略时,出现以下错误:

Set-AzureRmApiManagementPolicy : ValidationError: 资源被修改自 最后检索.

只有当策略已经存在时才会出现此错误。如果我删除该策略并重新 运行 它,那么它就可以正常工作。因此,一旦政策已经存在,更新政策就会出现一些奇怪的问题。我知道这应该有效,因为如果我提前调用 Login-AzureRmAccount 并登录,我就能得到这个 运行ning。然后更新现有策略。这似乎与我使用 Api 管理 REST API 进行身份验证的方式有关。我正在使用证书验证方法,这就是为什么我不需要调用 Login-AzureRmAccount 的原因。有什么想法吗?

事实证明,这个问题是由旧的“2014-02-14”api 版本中的错误引起的。 PowerShell commandlet (Set-AzureRmApiManagementPolicy) 基本上编译成一个使用 2014-02-14 api 的简单 REST 调用-版本。我通过调用 Get-Module -ListAvailable 检查了 PowerShell 模块 AzureRm.ApiManagement 的版本

由于AzureManagement模块与我使用的八达通平台捆绑在一起,我无法直接更新它。因此,我决定完全放弃使用 PowerShell commandlet 的想法,直接调用 Azure Management REST API。问题已解决。