我已创建具有以下访问权限的服务主体:
- 订阅时的
Contributor
角色 - AAD租户上的
Global administrator
角色 - 已验证Microsoft Graph API权限:
- Group.Read.All
- User.Read.All
使用此SP进行身份验证时,我正在尝试将Azure服务角色分配给AAD组。例如:
resource "azurerm_role_assignment" "storage_account_admin" {
scope = azurerm_storage_account.my_storage.id
role_definition_name = "Storage Blob Data Owner"
principal_id = data.azuread_group.my_group.object_id
}
字符串
当尝试应用此功能时,Terraform会从Azure抛出一个授权错误:
对象ID为“...”的客户端“...”无权在作用域“/订阅/...”上执行操作“Microsoft.Authorization/rolearching/write”,或者作用域无效。如果最近授予了访问权限,请刷新您的凭据。
我可以使用具有Owner
角色的用户Azure帐户创建此资源。我是否需要将我的服务主体提升到Owner
-这似乎有点危险-或者是否有更具体的解决方法?
1条答案
按热度按时间5sxhfpxr1#
您收到此错误的原因是因为
Contributor
角色不包括authorization
相关权限,如角色分配。若要修复此错误,请将
Owner
角色分配给服务主体,或将User Access Administrator
角色添加到服务主体。