无法将托管服务标识 (MSI) 用于通过托管 Microsoft 代理进行的应用服务部署?
Can't use Managed Service identity (MSI) for App Service deployment with hosted Microsoft agent?
我们的发布管道失败并显示以下消息:
resource ID for resource type 'Microsoft.Web/Sites' and resource name
'appservicename'. Error: Could not fetch access token for Managed
Service Principal. Please configure Managed Service Identity (MSI) for
virtual machine 'https://aka.ms/azure-msi-docs'. Status code: 400,
status message: Bad Request
我们有 2 个不同的服务连接:
- Azure 资源管理器使用服务主体身份验证
- Azure 资源管理器使用托管身份验证
第一个,很有魅力。然而,由于开发人员想要限制 Azure AD 上的管理员访问权限,他尝试创建一个托管身份验证服务连接,乍一看,因为它允许我们 select 应用服务,似乎表明它正在工作,直到实际部署已触发,但根据上述错误消息失败。
经过多次在线搜索,我认为 this 答案可能是为什么托管身份验证服务连接失败但服务主体连接成功的线索。
我只是想确认一下,真的是这样吗?托管代理不支持基于 MSI 的身份验证,这是我们正在使用的……还是已经改变了?
我们确实在使用 Microsoft 代理池
此时我们的应用服务使用虚拟机没有意义。该用例不适用于我们拥有的仪表板。
如the docs中所写:
You are required to use a self-hosted agent on an Azure VM in order to use managed service identity
我认为它一直都是这样。这里我们讨论的是分配给作为构建代理的 VM 的 MSI。不是 MSI,它是 App Service 的标识。为什么?服务连接是一种抽象,可以轻松地对您的 Azure 订阅进行身份验证。因此,它为 VM 提供身份,然后当您对 Azure 执行某些操作时,感谢 MSI Azure 知道可以执行该操作。另一个选项是通过服务主体进行身份验证,但可以从任何 VM(包括 MS 托管)完成,因为它依赖于服务连接中保存的客户端 ID 和客户端密码。并且必须将 MSI 分配给特定的 VM,而这无法通过 MS 托管代理完成。
我们的发布管道失败并显示以下消息:
resource ID for resource type 'Microsoft.Web/Sites' and resource name 'appservicename'. Error: Could not fetch access token for Managed Service Principal. Please configure Managed Service Identity (MSI) for virtual machine 'https://aka.ms/azure-msi-docs'. Status code: 400, status message: Bad Request
我们有 2 个不同的服务连接:
- Azure 资源管理器使用服务主体身份验证
- Azure 资源管理器使用托管身份验证
第一个,很有魅力。然而,由于开发人员想要限制 Azure AD 上的管理员访问权限,他尝试创建一个托管身份验证服务连接,乍一看,因为它允许我们 select 应用服务,似乎表明它正在工作,直到实际部署已触发,但根据上述错误消息失败。
经过多次在线搜索,我认为 this 答案可能是为什么托管身份验证服务连接失败但服务主体连接成功的线索。
我只是想确认一下,真的是这样吗?托管代理不支持基于 MSI 的身份验证,这是我们正在使用的……还是已经改变了?
我们确实在使用 Microsoft 代理池
此时我们的应用服务使用虚拟机没有意义。该用例不适用于我们拥有的仪表板。
如the docs中所写:
You are required to use a self-hosted agent on an Azure VM in order to use managed service identity
我认为它一直都是这样。这里我们讨论的是分配给作为构建代理的 VM 的 MSI。不是 MSI,它是 App Service 的标识。为什么?服务连接是一种抽象,可以轻松地对您的 Azure 订阅进行身份验证。因此,它为 VM 提供身份,然后当您对 Azure 执行某些操作时,感谢 MSI Azure 知道可以执行该操作。另一个选项是通过服务主体进行身份验证,但可以从任何 VM(包括 MS 托管)完成,因为它依赖于服务连接中保存的客户端 ID 和客户端密码。并且必须将 MSI 分配给特定的 VM,而这无法通过 MS 托管代理完成。