Azure 策略定义权限错误 : AuthorizationFailed

标签 azure azure-managed-identity azure-policy

我正在使用 this azure template 定义自定义 Azure 策略 (azure 的官方 github 存储库)。 作为参数,我只是在参数中传递日志分析工作区名称。下面的 powershell 代码(取自 azure 存储库)用于此目的,我刚刚将 -AssignIdentity 添加到第二个命令中,因为这是必要的。作为角色定义,我在模板内授予订阅所有者权限。

$definition = New-AzPolicyDefinition -Name "deploy-oms-vm-extension-windows-vm" -DisplayName "Deploy default Log Analytics VM Extension for Windows VMs." -description "This policy deploys the Log Analytics VM Extensions on Windows VMs, and connects to the selected Log Analytics workspace." -Policy 'https://raw.githubusercontent.com/Azure/azure-policy/master/samples/Compute/deploy-oms-vm-extension-windows-vm/azurepolicy.rules.json' -Parameter 'https://raw.githubusercontent.com/Azure/azure-policy/master/samples/Compute/deploy-oms-vm-extension-windows-vm/azurepolicy.parameters.json' -Mode Indexed 
$definition
$assignment = New-AzPolicyAssignment -Name <assignmentname> -Scope <scope> -logAnalytics <logAnalytics> -PolicyDefinition $definition -AssignIdentity
$assignment 

策略已正确创建。但是,当我尝试创建修复任务时,任务失败并收到以下错误:

详情 代码授权失败 消息对象 ID 为“xxxx-xxx-xxxx-xxxx-xxxx”的客户端“xxxx-xxx-xxxx-xxxx-xxxx”无权在范围“/”上执行操作“Microsoft.Resources/deployments/validate/action” subscriptions/xxxx-xxx-xxxx-xxxx-xxxx/resourcegroups/rg-test/providers/Microsoft.Resources/deployments/PolicyDeployment_17825756917269472742' 或范围无效。如果最近授予了访问权限,请刷新您的凭据。

在门户上,我看到策略定义具有我定义的所有者权利。 enter image description here 但我也在政策补救页面上看到了这一点: enter image description here

我不明白这个错误的原因。有人有什么想法吗?

最佳答案

经测试,可能是您的账户权限导致的。我认为这与您的策略定义的作用没有任何关系。

显示相同错误消息的一种情况是使用错误的订阅或错误的资源组进行操作,但我认为选择错误的订阅或资源组的可能性非常低,因为您是在门户上执行的。

显示此错误消息的另一种情况是我在我这边测试的。我用一个帐户进行测试,尚未分配具有足够权限的角色,它显示相同的错误消息。因此,请检查您的帐户角色并分配具有更高权限的角色,然后创建修复任务。

关于Azure 策略定义权限错误 : AuthorizationFailed,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65304872/

相关文章:

c# - 从同一应用服务中的应用程序连接到 Azure Webjob

Azure 负载均衡器 - 平衡本地服务器

azure-managed-identity - 使用应用服务和 Azure SQL 的用户分配身份是否有效?

azure - 如何根据国家/地区限制 Azure 上托管的网站访问

azure - 为什么 Az powershell 在简单的 "show policy definition"命令上返回此错误?

.net - Windows azure : Class library : how to know if running in Web Role or in regular Web service

azure - 如何使用托管标识从 Azure Kubernetes 服务 (AKS) 访问 Azure Key Vault (AKV)

azure - 尝试使用用户管理身份向 Azure 进行身份验证失败并显示 401

Azure 策略 : Deny If Owner Tag Does Not Exist Or Isn't Email Address

Azure AKS 节点池不根据缩放配置文件自动缩放