TF400813:在 Azure DevOps 管道中使用 System.AccessToken 时,用户“”无权访问此资源

TF400813: The user '' is not authorized to access this resource when using System.AccessToken in Azure DevOps pipeline

在我的管道中,我使用 System.AccessToken as token to call Release Deployment API,使用 azure-devops-node-api

它一直工作到最近,但现在由于上述错误而 100% 失败。我已经检查了这个 https://docs.microsoft.com/en-us/azure/devops/pipelines/process/access-tokens?view=azure-devops&tabs=yaml#job-authorization-scope 之后的令牌范围,没有任何改变。关于如何调试这个有什么建议吗?

因为''中没有任何内容,所以系统很可能将您的访问识别为匿名访问。有时,使用代理或重新配置默认组织和项目时会出现此问题。

以下是帮助您调试此问题的一些方法:

  1. 在您的管道中将 system.debug 变量设置为 true,并选中“让用户在 运行 连接此管道时覆盖此值”选项。这将显示更完整的 运行 日志以检查问题。

  2. 使用网络调试工具Fiddler

  3. 运行 打开浏览器的 Developer Console(通常是 F12)并逐行检查的管道。

我用不同的包来面对这个问题(这取决于 azure-devops-node-api) 您的问题很可能是相同的,并且与此潜在问题相关: https://github.com/microsoft/azure-devops-node-api/issues/419

恢复到 azure-devops-node-api 的 1.7.3 版本应该可以修复它。