Azure DevOps OnPrem - 服务连接失败 - 无法获取 Json Web 令牌

Mat*_*lor 3 azure serviceconnection azure-devops azure-devops-server-2019

所以,有点奇怪,我希望有人遇到这个问题并找到解决方案(或者理解为什么会发生)

所以这曾经毫无问题地工作过......据我们所知,这周才开始发生

基本上,当您在 Azure DevOps 中创建新的 Azure 资源管理器服务连接时,您会收到以下错误; Failed to obtain the Json Web Token(JWT) using service principal client ID. Exception Message: Object reference not set to an instance of an object.

这种情况仅发生在我们的本地 Azure DevOps 服务器上 - 我可以在 Dev.Azure.com 版本上使用相同的设置创建服务连接,不会出现任何问题。

故障排除

  • 创建多个服务主体
  • 尝试了不同的订阅
  • 尝试向 SP 所有者授予订阅权限
  • 即使您尝试重新验证现有服务连接,也会收到相同的错误
  • 在 Dev.Azure.com 中工作
  • 我们的本地部署内容没有发生任何网络变化
  • 仍然能够使用现有的服务连接来操作发布(即使您无法验证它们)
  • 尝试按照 MS 故障排除页面的建议创建另一个秘密
  • 我有一个 PS 脚本,可以使用我创建的 SP 来获取不记名令牌,并且该脚本有效

显然,我已经尝试用谷歌搜索这个问题,它出现在几个地方,但没有一个有解决方案或理解为什么会发生......

TIA

Cyb*_*ude 5

该解决方案可在“故障排除”页面上找到,可通过“服务连接”的“编辑”窗格中的“故障排除”链接访问:排除 ARM 服务连接故障

\n

相关部分粘贴在这里以供参考/保留:

\n
\n

使用服务主体客户端 ID 获取 JWT 失败

\n

当您尝试验证具有过期密钥的服务连接时,会出现此问题。

\n

要解决此问题:

\n
    \n
  1. 转到项目设置>服务连接,然后选择要修改的服务连接。

    \n
  2. \n
  3. 选择右上角的编辑,然后对您的服务连接进行任何更改。最简单且推荐的更改是添加描述。

    \n
  4. \n
  5. 选择“保存”以保存服务连接。

    \n
  6. \n
\n
\n

\xe2\x9a\xa0 注意

\n

选择保存。不要尝试在此步骤验证服务连接。

\n
\n
    \n
  1. 退出服务连接编辑窗口,然后刷新服务连接页面。

    \n
  2. \n
  3. 选择右上角的编辑,然后选择验证

    \n
  4. \n
  5. 选择保存以保存您的服务连接。

    \n
  6. \n
\n
\n