在 Terraform 中使用时,Azure 服务主体获得 "Authorization_RequestDenied"
Azure Service Principal gets "Authorization_RequestDenied" when used in Terraform
我有一个服务主体,它在 运行我的 Terraform 脚本时使用,它可以完成我需要做的 99% 的工作。但是,然后我需要 运行 以下脚本与 terraform 来更新应用程序注册上的 属性 - 因为这是唯一可以完成的方法(此处供参考 - https://github.com/hashicorp/terraform-provider-azuread/issues/188)。
resource "null_resource" "access_token_accepted_version" {
depends_on = [
azuread_application.appname
]
provisioner "local-exec" {
command = <<EOF
az login --service-principal --username ${var.az_client_id} --password
${var.az_client_secret} --tenant ${var.az_tenant_id}
az rest \
--method PATCH \
--headers "Content-Type=application/json" \
--uri "https://graph.microsoft.com/v1.0/applications/${azuread_application.appname.id}" \
--body '{"api":{"requestedAccessTokenVersion":2}}'
EOF
}
}
Az登录部分好像运行成功了,但是之后调用PATCH总是会报下面的错误-
ERROR: Forbidden({"error":{"code":"Authorization_RequestDenied","message":"Insufficient privileges to complete the operation."
我想有一个权限可以添加到服务主体的关联应用程序注册中,但我找不到合适的权限。这是我目前拥有的(有些是需要的,有些是在黑暗中刺伤的)
有人能想出办法解决这个问题吗?
您需要在 Microsoft Graph
下授予 Application.ReadWrite.All
权限。目前您已在 Azure Active Directory Graph
.
下授予该权限
一旦你这样做,你就不应该得到这个错误。
我有一个服务主体,它在 运行我的 Terraform 脚本时使用,它可以完成我需要做的 99% 的工作。但是,然后我需要 运行 以下脚本与 terraform 来更新应用程序注册上的 属性 - 因为这是唯一可以完成的方法(此处供参考 - https://github.com/hashicorp/terraform-provider-azuread/issues/188)。
resource "null_resource" "access_token_accepted_version" {
depends_on = [
azuread_application.appname
]
provisioner "local-exec" {
command = <<EOF
az login --service-principal --username ${var.az_client_id} --password
${var.az_client_secret} --tenant ${var.az_tenant_id}
az rest \
--method PATCH \
--headers "Content-Type=application/json" \
--uri "https://graph.microsoft.com/v1.0/applications/${azuread_application.appname.id}" \
--body '{"api":{"requestedAccessTokenVersion":2}}'
EOF
}
}
Az登录部分好像运行成功了,但是之后调用PATCH总是会报下面的错误-
ERROR: Forbidden({"error":{"code":"Authorization_RequestDenied","message":"Insufficient privileges to complete the operation."
我想有一个权限可以添加到服务主体的关联应用程序注册中,但我找不到合适的权限。这是我目前拥有的(有些是需要的,有些是在黑暗中刺伤的)
有人能想出办法解决这个问题吗?
您需要在 Microsoft Graph
下授予 Application.ReadWrite.All
权限。目前您已在 Azure Active Directory Graph
.
一旦你这样做,你就不应该得到这个错误。