我目前正在尝试将公司A拥有的Azure DevOps下的发布管道中的应用程序部署到公司B拥有的Azure上托管的Azure应用程序中 .
尝试释放停止Azure应用程序时继续收到此错误:
错误:无法获取资源类型“Microsoft.Web / Sites”和资源名称“AppName”的资源ID . 错误:无法获取托管服务主体的访问令牌 . 请为虚拟机“https://aka.ms/azure-msi-docs”配置托管服务标识(MSI) . 状态码:400,状态消息:错误请求
我不知道如何解决这个问题 .
到目前为止做了什么:
-
Web App在公司B的Azure中创建
-
DevOps公司的用户帐户在公司Azure AD中作为访客用户添加
-
用户在Web App上拥有Contributor权限
-
托管服务标识在Web App上设置为"On"
-
在Azure DevOps中设置发行版时,可以查看和选择公司B和Web Apps的订阅 .
我很确定需要更多才能使发布部署工作,但经过深入搜索后,我无法找到任何内容 .
希望这里有人可以提供建议 .
1 回答
管理找到我遇到的问题的解决方案 . 它与Azure订阅上的来宾帐户的访问权限相关 .
首先,“托管服务标识”与此问题无关 .
以下是将公司A的Azure DevOps连接到公司B的Azure时所遵循的步骤:
在公司B Azure中创建Web应用程序
Azure DevOp来自公司A的帐户在公司B的Azure中添加为"Guest User"
DevOp的帐户在Azure订阅和Web应用程序上都具有参与者权限 .
在公司A 's DevOps, add a 1089700 . Choose the settings of Company B' s Azure中"Service Principal Authentication"
保存Azure资源管理器后,系统将提示您登录 . 您需要使用B公司Azure的管理员帐户登录 .