VSTS使用vssClientCredentials进行身份验证

时间:2017-11-28 15:55:10

标签: c# azure-devops

我目前正在尝试使用下面的代码连接到VSTS项目,之前在显示的对话框中输入凭据后,我已成功连接。

if (!IsConnected)
{
    sourceControl = release.SourceControl;
    connection = new VssConnection(new Uri(sourceControl), new VssClientCredentials());
    workItemTrackingHttpClient = connection.GetClient<WorkItemTrackingHttpClient>();
}

不再显示该对话框并抛出异常:

  

TF400813:资源不可用于匿名访问。客户   需要身份验证。

我不知道任何可能导致这种情况发生变化的变化,我们将非常感谢任何帮助。

1 个答案:

答案 0 :(得分:3)

您可以从注册表中删除缓存的凭据:Computer\HKEY_CURRENT_USER\Software\Microsoft\VSCommon\14.0\ClientServices\TokenStorage\VisualStudio(删除 VssApp 键)

您还可以指定凭据存储:

var c = new VssClientCredentials();
c.Storage = new VssClientCredentialStorage(storageKind: "VssApp2", storageNamespace: "VisualStudio");
connection = new VssConnection(new Uri(sourceControl), c);