Это очень удобно для людей, но как быть, если подключение необходимо выполнить для приложения или веб-службы? С этой целью в программном коде следует применять «альтернативные учетные данные», использование которых необходимо разрешить в параметрах учетной записи. Это тот же самый параметр, который используется при включении базовой аутентификации для git-tf. Затем можно написать программный код, в котором для подключения к службе будут использоваться эти учетные данные. В долговременной перспективе мы также добавим поддержку OAuth, однако она еще в экспериментальной стадии.
Включение альтернативных учетных данных.
Прежде всего эту функцию необходимо включить. Сначала откройте в браузере свою учетную запись или проект, щелкните свое имя в правом верхнем углу, а затем щелкните My Profile (Мой профиль).
В диалоговом окне User Profile (Профиль пользователя) щелкните вкладку Credentials (Учетные данные).
Укажите пароль и сохраните изменения.
Использование в коде альтернативных учетных данных
Перед выполнением описанных ниже действий убедитесь, что на вашем компьютере установлена Visual Studio 2012 с обновлением 1 или более новая версия. В состав этого обновления входят расширения для объектной модели клиента TFS, поддерживающие использование альтернативных учетных данных.
Самый простой способ получения новейших обновлений — щелкнуть всплывающее уведомление на панели задач Windows или в Visual Studio перейти в раздел Tools (Инструменты) –> Extensions and Updates… (Расширения и обновления…), щелкнуть Updates (Обновления), затем Product Updates (Обновления продукта) и установить новейшее обновление. Это обновление также можно загрузить здесь.
Чтобы убедиться в наличии установленного Visual Studio с обновлением 1 или более новой версии, выберите Help (Справка) –> About Microsoft Visual Studio (О Microsoft Visual Studio).
Завершив настройку учетных данных, давайте воспользуемся ими, создав простое консольное приложение.
Создав новое консольное приложение, добавьте ссылку на библиотеку Microsoft.TeamFoundation.Client.dll, которая входит в состав ReferenceAssemblies версии 2.0. Объектная модель клиента для TFS практически целиком разработана с помощью .NET 3.5 (CLR 2.0) для поддержки запуска веб-частей TFS в SharePoint.
Ниже приведен пример кода:
using System; using System.Collections.Generic; using System.Linq; using System.Net; using System.Text; using System.Threading.Tasks; using Microsoft.TeamFoundation.Client; namespace ConsoleApplication1 { class Program { static void Main(string[] args) { NetworkCredential netCred = new NetworkCredential( "someone@yahoo.com", "password"); BasicAuthCredential basicCred = new BasicAuthCredential(netCred); TfsClientCredentials tfsCred = new TfsClientCredentials(basicCred); tfsCred.AllowInteractive = false; TfsTeamProjectCollection tpc = new TfsTeamProjectCollection( new Uri("https://YourAcct.visualstudio.com/DefaultCollection"), tfsCred); tpc.Authenticate(); Console.WriteLine(tpc.InstanceId); } } }
Я добавил два оператора using, один для System.Net, чтобы получать NetworkCredential, а другой для Microsoft.TeamFoundation.Client, для доступа к тем классам TFS, которые нам понадобятся.
Сначала мы создадим стандартный объект NetworkCredential с именем пользователя (адрес электронной почты будет совпадать с данными вашей учетной записи Microsoft) и паролем, который вы создали для альтернативных учетных данных. В объекте TfsClientCredentials мы присваиваем параметру AllowInteractive значение false, чтобы отключить появление диалогового окна при использовании неверных учетных данных.
При создании коллекции TfsTeamProjectCollection мы должны указать URL-адрес коллекции и учетные данные. Обратите внимание, что все соединения с учетными записями TF Service требуют использования протокола HTTPS. В настоящее время каждой учетной записи в TF Service соответствует одна коллекция, поэтому она всегда называется DefaultCollection.
Наконец, мы вызываем метод Authenticate() с целью проверки правильности указанных учетных данных и тестирования работоспособности кода, для чего на экран выводится уникальный идентификатор InstanceId этой коллекции.
Теперь приложения, которые не запрашивают ввод учетных данных, могут пользоваться всеми возможностями клиентской объектной модели TFS с помощью службы TF Service.
Новые интересные материалы по инструментам разработки на русском языке.
Команда Русского MSDN на регулярной основе ищет наиболее интересные англоязычные материалы для перевода и публикует их в специальном блоге blogs.msdn.com/b/developer-tools-rus/
Сейчас там уже более десятка статей на различные темы, возможно какие то из них будут вам интересны:
- JavaScript: повышение производительности при запуске IE с помощью Visual Studio
- Отладка приложений SharePoint с помощью IntelliTrace в Visual Studio
- Управление версиями в объектной модели клиента TFS
- Улучшенная загрузка символов кода отладчиком Visual Studio 2012
- Знакомство с эмуляторами SharePoint
- Работа нескольких команд в Microsoft Team Foundation Server 2012 и Visual Studio Scrum 2.0
- Кодированный тест пользовательского интерфейса: настройка свойств поиска при записи в Internet Explorer
- Покрытие кода в Microsoft Test Manager. Подробный анализ
- Использование async/await без .NET Framework 4.5
- Typescript — история адаптации к TFS
- Гетерогенные зависимости: что же делать группе разработчиков? Мигрировать или интегрировать!
- Разработка приложений в Visual Studio 2012 для Магазина Windows с помощью набора средств для мультиязычных приложений
- Расширение проверки правописания в Visual Studio 2012 HTML, ASP.NET, CSS и файлах иных типов
- Введение в ARM: изучаем неопределенное, не заданное спецификациями и зависящее от реализации поведение языка C++
- Пример быстрого реагирования — утилита командной строки для создания сценариев ветвления TFS
- Знакомство с дополнением Code Map в CTP-версии Visual Studio 2012
ссылка на оригинал статьи http://habrahabr.ru/company/microsoft/blog/171209/
Добавить комментарий