Как подключиться к проекту TFS, не имея доступа к коллекции проектов TFS Team?

#c# #.net #authentication #tfs #tfs-sdk

#c# #.net #аутентификация #tfs #tfs-sdk

Вопрос:

У меня есть доступ к определенному проекту TFS на моем сервере. Я хочу получить программный доступ к этому проекту с помощью TFS API. Я не вижу способа прямого доступа к проекту, вместо этого я должен пройти через TfsTeamProjectCollection. Однако, когда я пытаюсь пройти аутентификацию в TfsTeamProjectCollection, мне отказывают в разрешениях. Когда я вызываю Authenticate() метод, я получаю эту ошибку:

 An unhandled exception of type 
'Microsoft.TeamFoundation.TeamFoundationServiceUnavailableException' occurred in 
Microsoft.TeamFoundation.Client.dll

Additional information: HTTP code 407: Proxy Authentication Required
  

Вот мой код:

 const string destProjectName = "Test_Dest";
var destUri = new Uri("https://mytfs.server.com:####/tfs/MyProjectCollection");
var destBasicCreds = new BasicAuthCredential(new NetworkCredential("domainusername", "password"));
var destCreds = new TfsClientCredentials(destBasicCreds) { AllowInteractive = false };
var destTpc = new TfsTeamProjectCollection(destUri, destCreds);
destTpc.Authenticate();
  

Я пробовал как BasicAuthCredential, так и WindowsCredential, и получаю ту же ошибку. Есть ли что-то еще, что я должен попробовать?

Комментарии:

1. Это не кажется мне проблемой аутентификации TFS, скорее проблемой прокси. Вы используете прокси-сервер?

2. С какого клиента вызывается этот код? И откуда?

3. @ChrisBint, я согласен. После некоторого дальнейшего тестирования я обнаружил, что если я действительно перейду на веб-страницу и войду в систему там, то мой код будет выполнен. Думаю, мне придется исследовать аутентификацию на прокси. Какие-нибудь советы?

4. @Mike Cheel, в настоящее время я вызываю этот код из отладчика в Visual studio. =)

5. Я имел в виду извне вашего домена сети или внутри?