【问题标题】:Can Visual Studio access TeamCity symbol server if basic auth is rquired?如果需要基本身份验证,Visual Studio 可以访问 TeamCity 符号服务器吗?
【发布时间】:2017-08-25 21:57:40
【问题描述】:

我有 TeamCity 符号服务器插件可以正常工作,只要我允许来宾登录 TeamCity 并且来宾具有适当的权限,就可以按预期从 VS2017 中提取符号和源代码。

但是,所需的权限是相当宽松的(允许下载源代码)。这是一个私人的商业团队,所以我不想允许公共/访客访问。我希望它经过身份验证,但似乎无法让 VS2017 提示输入凭据或在 VS2017 的“调试”>“符号”设置 (https://user:pass@my.teamcity.com) 中配置的 URL 上传递它们。输出窗口总是显示“Symbol server authentication failed”。

不确定这是 VS 的限制还是我没有正确配置它。有谁知道这是否/如何可能?

【问题讨论】:

  • 仅供参考,这已向 MS 报告,据称正在“调查中”。如果您关心这个问题,请在developercommunity.visualstudio.com/content/problem/102981/… 投票
  • 好消息! MS 回复了上面的社区帖子,该问题已在即将发布的 VS 版本中得到修复。他们没有说是哪个/什么时候,但他们这些天似乎很快就推出了更新,所以希望不会太久。

标签: visual-studio teamcity debug-symbols symbol-server


【解决方案1】:

编辑: Looks like it is a bug。 (感谢@mmchenry 提供错误报告链接。)According to a comment 它将在即将发布的版本中修复。同时,可以使用以下解决方法。


我认为这可能是 VS 2017 中的一个新错误。更新到 15.3 后,我无法出现身份验证提示。它曾经经常出现。现在,由于您列出的错误,符号信息总是失败:Symbol server authentication failed。

不过我有一个解决方法。 Windows SDK 中的symchk.exe 实用程序下载符号。使用 Win10 SDK,您可以在这里找到 symchk:c:\Program Files (x86)\Windows Kits\10\Debuggers\x64\symchk.exe

这是一个如何使用它的示例(powershell):

& "c:\Program Files (x86)\Windows Kits\10\Debuggers\x64\symchk.exe" `
  "C:\path\to\Your.dll" /r /v /s `
  "srv*c:\symcache*https://my.teamcity.com/app/symbols"

这仍然提供了一个 UI 提示来获取凭据,然后下载到符号缓存,您可以在 Debug->Symbols 选项中让 Visual Studio 加载:

【讨论】:

  • 无赖。至少根据您的经验,它似乎应该工作,所以希望它会得到修复。感谢您的解决方法。
  • 将此标记为答案,因为除非 MS 修复它,否则似乎没有其他事情可做(请参阅原始帖子下的评论)
  • 已将 VS 2017 更新至 15.3.4,但仍未修复。
【解决方案2】:

现在在 15.5 中已修复此问题。据我所知,它没有在发行说明中列出,而是MS rep commented that it was fixed in 15.5,所以我试了一下。

安装 15.5 后,它一开始并没有提示我输入凭据。所以我删除/重新添加了符号服务器设置并清理了符号缓存。然后在下一次运行时提示我输入凭据,成功下载了符号并允许我调试程序集。

【讨论】:

    猜你喜欢
    • 2020-02-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-01-22
    • 2021-10-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多