Tfs nuget凭据如何告知正在使用哪个提供程序?

Tfs nuget凭据如何告知正在使用哪个提供程序?,tfs,azure-devops,nuget,Tfs,Azure Devops,Nuget,因此,出于“安全”原因,我被迫使用不同的帐户来运行VisualStudio,以执行某些管理级别的操作(主要是注册COM对象)。不过,TFS只知道我的低级常规帐户。在过去,这不是一个问题,我已经为我的管理员帐户设置了凭据,以便使用常规帐户登录TFS 但是,自从我上次更改密码并从VS2019登录到一个特定的nuget提要(由TFS/Azure devops内部服务器托管)以来,情况发生了变化,以管理员身份运行将锁定我的广告帐户。另外,我的git TFS帐户似乎没有使用正确的帐户。由同一TFS实例承载

因此,出于“安全”原因,我被迫使用不同的帐户来运行VisualStudio,以执行某些管理级别的操作(主要是注册COM对象)。不过,TFS只知道我的低级常规帐户。在过去,这不是一个问题,我已经为我的管理员帐户设置了凭据,以便使用常规帐户登录TFS

但是,自从我上次更改密码并从VS2019登录到一个特定的nuget提要(由TFS/Azure devops内部服务器托管)以来,情况发生了变化,以管理员身份运行将锁定我的广告帐户。另外,我的git TFS帐户似乎没有使用正确的帐户。由同一TFS实例承载的不同提要(唯一的区别是提要名称)可以正常工作

我曾尝试使用
dotnetnuget更新源名称-u用户名-p密码
为nuget设置凭据,但没有任何帮助。我怀疑git在推送到TFS服务器时会出现问题,因为它使用的是某种windows存储的用户名和密码,而nuget使用的是相同的无效凭据。我可以登录到TFS,在VS2019中搜索工作项以添加git提交,这样至少可以正确设置一个提供程序


因此,我的问题是如何找出特定nuget提要使用的实际用户名和凭据类型/提供者?理想情况下,我也想知道它使用的用户名。

请首先确保您登录的帐户对nuget软件包具有访问权限

如何找出特定nuget提要使用的实际用户名和凭据类型/提供者?

您应该在我的本地文件夹中找到CredentialProvider:

C:\Users\[username]\AppData\Local\NuGet\CredentialProviders\

还可以尝试以下解决方案,检查这是否奏效:

  • 右键单击解决方案资源管理器中的解决方案

  • 管理解决方案的Nuget软件包->在右上角单击齿轮符号->在左侧转到Nuget软件包管理器

  • 软件包源->右侧未选中您遇到问题的软件包源

  • 单击确定按钮->重新启动VS,它应该只要求您登录一次 现在


  • .

    好吧,在我的例子中,不同版本的nuget正在使用。 CredentialProviders文件夹为空

    但是,我怀疑其中涉及了一个较旧版本的nuget,它在这个配置文件中查找
    C:\Users\\AppData\Roaming\NuGet\NuGet.Config
    在我的例子中,它有两个相同的存储库名称,但大小写略有不同(不知道为什么?),其中一个条目的密码不正确(它们都应该是相同的)

    因此,为旧机制运行
    nuget.exe sources update
    ,以及运行
    dotnet nuget update source
    都是有效的。我还注意到,
    updatesource
    需要比我在
    global.json
    中为该项目指定的更高版本的dotnetsdk

    所以我怀疑这主要是因为

    • 我的机器上有多个版本的nuget,还有一个稍旧的dotnet sdk正在使用
    • 名称相同但大小写不同的nuget存储库
    我希望这对其他人有所帮助


    我已将Patrick Lu answer标记为正确答案,因为它实际上回答了我的原始问题。

    Hmm我在credentials providers文件夹中没有任何用户的信息。问题部分在于运行VisualStudio的用户没有访问提要的权限,我需要使用我的常规帐户进行访问(这要归咎于infosec)。等我能回来的时候再拿。我们将快速查看凭据提供程序的源代码,看看是否安装它可能会解决我的问题。提要有四个访问级别:所有者、贡献者、协作者和读者。所有者可以将任何类型的身份个人、团队和组添加到任何访问级别。您可以将该用户添加到参与者角色
    将快速查看凭据提供程序源代码,看看它是否有可能安装它将解决我的问题。
    请随时更新此处的任何结果。我怀疑问题在于我的管理员级别用户帐户正在使用旧密码登录nuget repo,因此我需要确定它从何处提取凭据,以便我可以改变它们。真正的痛点是浏览回购协议会将账户锁定在广告中,因此我需要与IT部门沟通以解锁账户。我很确定我已经更改了“rundll32.exe keymgr.dll,KRShowKeyMgr”中的所有内容,稍后我会带着我找到的任何东西回来。