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

u5rb5r59  于 2022-11-17  发布在  其他
关注(0)|答案(3)|浏览(129)

所以,有点奇怪的一个,我希望有人有这个问题,并找到一个解决办法(或理解为什么会发生)
所以这曾经没有任何问题的工作...只是在本周开始发生-据我们所知
基本上,当您在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服务器上-我可以在我们的www.example.com版本上使用相同的设置创建服务连接Dev.Azure.com,没有任何问题。

疑难排解

  • 已创建多个服务主体
  • 已尝试不同的订阅
  • 已尝试授予订阅的SP所有者权限
  • 即使尝试重新验证现有服务连接,也会出现相同的错误
  • 在www.example.com中工作Dev.Azure.com
  • 在内部部署方面没有任何网络更改
  • 仍然能够使用现有的服务连接操作发布(即使您无法验证它们)
  • 已尝试按照MS疑难解答页面的建议创建另一个密码
  • 我有一个PS脚本,可以使用我创建的SP获得不记名令牌,该脚本可以正常工作

显然,我已经试着在谷歌上搜索这个问题,它出现在几个地方,但没有一个有一个解决方案或理解为什么它会发生...
短暂性脑缺血

cngwdvgl

cngwdvgl1#

下面的链接是针对您的问题的不同变体,但第一条评论建议运行一个Powershell脚本,该脚本可能会提供更多详细信息。
https://social.msdn.microsoft.com/Forums/sqlserver/en-US/7537132d-a363-4868-86fa-c008de180ff1/failed-to-obtain-the-json-web-tokenjwt-for-service-principal?forum=TFService

mbyulnm0

mbyulnm02#

Azure DevOps OnPrem -服务连接失败-无法获取Json Web令牌
根据官方文档排除Azure资源管理器服务连接故障。
这些错误通常在会话过期时发生。您可以参考此文档并执行以下步骤:
1.注销Azure管道或TFS。
1.打开InPrivate或incognito浏览器窗口并导航到https://visualstudio.microsoft.com/team-services/
1.如果系统提示您注销,请执行此操作。
1.使用适当的凭据登录。
1.从列表中选择要使用的组织。
1.选择要向其中添加服务连接的项目。
1.打开设置页面创建所需的服务连接。然后选择ServicesNew service connectionAzure Resource Manager
您可以尝试在Azure DevOps OnPrem计算机上运行以下脚本,并验证是否能够生成访问令牌。
GetAccessToken.ps1

f45qwnt8

f45qwnt83#

解决方案可在“故障排除”页面上找到,该页面可通过“服务连接”的“编辑”窗格中的“故障排除”链接访问:ARM服务连接故障排除
此处粘贴相关章节以供参考/保存:

无法使用服务主体客户机ID获取JWT

当您尝试验证具有过期密码的服务连接时,会出现此问题。
要解决此问题,请执行以下操作:
1.转到项目设置服务连接,然后选择要修改的服务连接。
1.选择右上角的“编辑”,然后对服务连接进行任何更改。最简单和推荐的更改是添加说明。
1.选择保存保存服务连接。

选择保存。不要在此步骤中尝试验证服务连接。
1.退出服务连接编辑窗口,然后刷新服务连接页面。
1.选择右上角的Edit,然后选择Verify
1.选择保存以保存您的服务连接。

相关问题