Azure AD 组 - Authorization_RequestDenied - 权限不足,无法完成操作
Azure AD Group- Authorization_RequestDenied - Insufficient privileges to complete the operation
我正在尝试通过 Azure DevOps 使用以下 Terraform 代码创建 Azure AD 组。
# Create Azure AD Group in Active Directory for AKS Admins
resource "azuread_group" "aks_administrators" {
#name = "${azurerm_resource_group.aks_rg.name}-administrators"
display_name = "${azurerm_resource_group.aks_rg.name}-${var.environment}-administrators"
description = "Azure AKS Kubernetes administrators for the ${azurerm_resource_group.aks_rg.name}-${var.environment} cluster."
security_enabled = true
}
我已经按照这些步骤提供了通过 Azure DevOps ARM 服务连接(服务原则)创建 Azure AD 组的权限。
• 为在上一步中创建的服务连接提供权限以创建 Azure AD 组
• 转到 -> Azure DevOps -> Select 组织 -> Select 项目 terraform-azure-aks
• 转到项目设置 -> 管道 -> 服务连接
• 打开 terraform-aks-azurerm-svc-con
• 单击管理服务主体,将打开新选项卡
• 单击查看 API 权限
• 点击添加权限
• Select API:Microsoft APIs
• 常用 Microsoft APIs:支持旧版 APIs:Azure Active Directory Graph-DEPRECATING 使用 Microsoft Graph
• 单击应用程序权限
• 勾选 Directory.ReadWrite.All 并点击添加权限
• 单击授予管理员对默认目录的同意
但我收到以下错误:
Error: Creating group "xxxxxxxxxx-administrators"
│
│ with azuread_group.aks_administrators,
│ on 06-aks-administrators-azure-ad.tf line 2, in resource "azuread_group" "aks_administrators":
│ 2: resource "azuread_group" "aks_administrators" {
│
│ graphrbac.GroupsClient#Create: Failure responding to request:
│ StatusCode=403 -- Original Error: autorest/azure: Service returned an
│ error. Status=403 Code="Unknown" Message="Unknown service error"
│ Details=[{"odata.error":{"code":"Authorization_RequestDenied","date":"2022-01-25T04:06:31","message":{"lang":"en","value":"Insufficient
│ privileges to complete the
│ operation."}}}]
请检查 Microsoft Graph 权限 Directory.ReadWrite.All
是否已 提供给服务连接并且已获得管理员同意.
我在我的环境中进行了相同的测试,在我的环境中,我 向我的服务主体授予了权限,但没有授予管理员同意 ,如下所示:
部署以下代码时,出现错误:
provider "azuread" {}
# Create Azure AD Group in Active Directory for AKS Admins
resource "azuread_group" "aks_administrators" {
#name = "ans-aks-administrators"
display_name = "ans-aks-test-administrators"
description = "Azure AKS Kubernetes administrators for the ans-aks-test cluster."
security_enabled = true
}
授予管理员同意后,问题得到解决:
如果问题仍然存在,请为服务连接服务主体添加一个新密码并使用以下代码:
provider "azuread" {
client_id = "ClientID of the service principal"
client_secret = "ClientSecret"
tenant_id = "<TenantID>"
}
# Create Azure AD Group in Active Directory for AKS Admins
resource "azuread_group" "aks_administrators" {
#name = "ans-aks-administrators"
display_name = "ans-aks-test-administrators"
description = "Azure AKS Kubernetes administrators for the ans-aks-test cluster."
security_enabled = true
}
我正在尝试通过 Azure DevOps 使用以下 Terraform 代码创建 Azure AD 组。
# Create Azure AD Group in Active Directory for AKS Admins
resource "azuread_group" "aks_administrators" {
#name = "${azurerm_resource_group.aks_rg.name}-administrators"
display_name = "${azurerm_resource_group.aks_rg.name}-${var.environment}-administrators"
description = "Azure AKS Kubernetes administrators for the ${azurerm_resource_group.aks_rg.name}-${var.environment} cluster."
security_enabled = true
}
我已经按照这些步骤提供了通过 Azure DevOps ARM 服务连接(服务原则)创建 Azure AD 组的权限。
• 为在上一步中创建的服务连接提供权限以创建 Azure AD 组
• 转到 -> Azure DevOps -> Select 组织 -> Select 项目 terraform-azure-aks
• 转到项目设置 -> 管道 -> 服务连接
• 打开 terraform-aks-azurerm-svc-con
• 单击管理服务主体,将打开新选项卡
• 单击查看 API 权限
• 点击添加权限
• Select API:Microsoft APIs
• 常用 Microsoft APIs:支持旧版 APIs:Azure Active Directory Graph-DEPRECATING 使用 Microsoft Graph
• 单击应用程序权限
• 勾选 Directory.ReadWrite.All 并点击添加权限
• 单击授予管理员对默认目录的同意
但我收到以下错误:
Error: Creating group "xxxxxxxxxx-administrators" │ │ with azuread_group.aks_administrators, │ on 06-aks-administrators-azure-ad.tf line 2, in resource "azuread_group" "aks_administrators": │ 2: resource "azuread_group" "aks_administrators" { │ │ graphrbac.GroupsClient#Create: Failure responding to request: │ StatusCode=403 -- Original Error: autorest/azure: Service returned an │ error. Status=403 Code="Unknown" Message="Unknown service error" │ Details=[{"odata.error":{"code":"Authorization_RequestDenied","date":"2022-01-25T04:06:31","message":{"lang":"en","value":"Insufficient │ privileges to complete the │ operation."}}}]
请检查 Microsoft Graph 权限 Directory.ReadWrite.All
是否已 提供给服务连接并且已获得管理员同意.
我在我的环境中进行了相同的测试,在我的环境中,我 向我的服务主体授予了权限,但没有授予管理员同意 ,如下所示:
部署以下代码时,出现错误:
provider "azuread" {}
# Create Azure AD Group in Active Directory for AKS Admins
resource "azuread_group" "aks_administrators" {
#name = "ans-aks-administrators"
display_name = "ans-aks-test-administrators"
description = "Azure AKS Kubernetes administrators for the ans-aks-test cluster."
security_enabled = true
}
授予管理员同意后,问题得到解决:
如果问题仍然存在,请为服务连接服务主体添加一个新密码并使用以下代码:
provider "azuread" {
client_id = "ClientID of the service principal"
client_secret = "ClientSecret"
tenant_id = "<TenantID>"
}
# Create Azure AD Group in Active Directory for AKS Admins
resource "azuread_group" "aks_administrators" {
#name = "ans-aks-administrators"
display_name = "ans-aks-test-administrators"
description = "Azure AKS Kubernetes administrators for the ans-aks-test cluster."
security_enabled = true
}