我正在尝试使用TerraForm和我们的AzureDevOps管道创建一个AzureAD应用程序,但我收到以下错误:
1 error(s) occurred:
* module.cluster.module.cluster.azuread_application.cluster: 1 error(s) occurred:
* azuread_application.cluster: graphrbac.ApplicationsClient#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":"2019-02-19T23:22:23","message":{"lang":"en","value":"Insufficient privileges to complete the operation."},"requestId":"<SOME GUID>"}}]
我很确定这是因为管道的服务主体在我们的azure广告中没有适当的权限。
这是有问题的terraform代码:
resource "azuread_application" "cluster" {
name = "some-application"
}
resource "azuread_service_principal" "cluster" {
application_id = "${azuread_application.cluster.application_id}"
}
以下是terraform步骤的外观(我使用服务连接来提供服务主体)。
要配置服务主体,我正在为服务连接选择“管理服务主体”。
然后,我为它授予了Microsoft Graph和Microsoft azure活动目录的所有“必需权限”。我不认为我需要微软的图表,但做了,因为WindowsAAD不工作。