azure - 如何使用 Azure Pipelines 在 Azure AD 中注册 Web 应用程序?

标签 azure azure-active-directory azure-pipelines azure-cli

我正在尝试使用 Bicep 模板和 Azure Pipelines 部署 Azure 资源。 到目前为止,我成功部署了一个 Web 应用程序,但我很难在 Azure AD 中注册它。

我的管道中有一项作业应该在 Azure AD 中创建一个应用程序: job in Azure pipeline

此作业失败并出现以下错误:

ERROR: Insufficient privileges to complete the operation.

我也尝试像这样使用azrest命令 az rest command 并得到类似的错误:

ERROR: Forbidden({"error":{"code":"Authorization_RequestDenied","message":"Insufficient privileges to complete the operation.","innerError":{"date":"2022-03-01T07:18:30","request-id":"903fcd87-ad15-4766-8f31-132185e2c97d","client-request-id":"903fcd87-ad15-4766-8f31-132185e2c97d"}}})

很明显,管道使用的服务连接没有一些必要的权限,但我不知道是哪一个。

服务连接具有所有者角色。以下是服务连接的 API 权限: api permissions

有一个answer类似的问题表明我需要 Azure AD Graph 中的 Application.ReadWrite.All,但 Azure AD 已弃用: azure ad deprecation

如有任何帮助,我们将不胜感激!

最佳答案

您应该改用 Microsoft Graph 并在其中选择适当的权限。

enter image description here

另一种选择是让 Web 应用程序的二头肌模板通过使用身份属性中的 SystemAssigned 为您添加系统管理的身份:

 resource appService 'Microsoft.Web/sites@2020-06-01' = {
  name: webAppName
  location: location
  properties: {
    serverFarmId: appServicePlan.id
    siteConfig:{
      alwaysOn: true
    }
    httpsOnly: true  
    clientAffinityEnabled: false
  }
  identity: {
    type: 'SystemAssigned'
    }
}

关于azure - 如何使用 Azure Pipelines 在 Azure AD 中注册 Web 应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71324931/

相关文章:

azure - 是否可以在 Spark 代码中获取 Azure AD 用户和组?

azure - 在没有错误消息的情况下,如何确定为什么在 `az fs upload` 中没有发生文件上传?

Azure管道在部署之前删除应用程序服务上的文件

azure - 应用程序 xxx 请求资源 xxx 上不存在的范围 Device.ReadWrite.All。联系供应商

将日志数据发送到 Azure Monitor 的 Azure 函数应用会导致套接字耗尽

powershell - 如何将所有者添加到 Azure AD 中的注册应用程序

c# - 找不到用于部署到 Azure Web 服务的已发布 DLL

AZURE Blob 存储 v2 生命周期管理

azure - 通过ARM模板提供经典云服务

node.js - 在 MS Bot Framework 机器人中获取 Azure Active Directory 用户的数据