我正在为节点服务创建向应用程序服务中的Web应用程序的发布管道。问题是我遇到此错误:
错误:无法获取资源类型'Microsoft.Web / Sites'和资源名称'SurveySaysStaging'的资源ID。错误:无法获取托管服务主体的访问令牌。请为虚拟机“ https://aka.ms/azure-msi-docs”配置托管服务身份(MSI)。状态代码:400,状态消息:错误的请求。
我已激活MSI,但仍无法正常工作。我在设置中也找不到与服务主体相关的任何内容,仅显示订阅的详细信息。任何帮助将不胜感激。
谢谢!
答案 0 :(得分:1)
我的问题已解决,我要做的就是创建与服务组的服务连接。
答案 1 :(得分:0)
错误:无法获取资源类型'Microsoft.Web / Sites'的资源ID
根据错误消息:
Failed to get resource ID for resource type 'Microsoft.Web/Sites' and resource name 'SurveySaysStaging'. Error: Could not fetch access token for Managed Service Principal.
如果您尝试使用托管代理运行发行版,则可能会遇到此问题。因为托管代理不支持基于MSI的身份验证。
为了使用基于MSI的身份验证,您需要在Azure VM上配置私有代理,并在Azure VM上配置MSI。
您可以查看this document了解更多详细信息。
注意:您可以验证是否已正确配置基于MSI的身份验证,请在Azure VM上的PS上运行以下脚本:
Invoke-WebRequest -Uri "https://169.254.169.254/metadata/identity/oauth2/token?api-version=2018-02-01&resource=https://management.azure.com/" -Headers @{Metadata="true"} -Method Get
此外,如果您已经在启用了MSI的私人代理中,则可以查看t his thread或this thread以获得帮助。
希望这会有所帮助。