API Team Foundation Server с использованием Oauth, предоставляемого Azure Active Directory

Я пытаюсь написать приложение, которое получит токен Oauth и будет взаимодействовать с TFS через API.
Я зарегистрировал приложение (https://app.vsaex.visualstudio.com) и могу получить токен Oauth с нужными мне областями.

На этот вопрос есть ответ от кого-то в Microsoft, который спрашивает: «Не случайно ли одна из учетных записей поддерживается Azure Active Directory?»

https://social.msdn.microsoft.com/Forums/vstudio/en-US/9061abf8-7ee9-452f-99f1-2a84f8c16d85/vso-api-oauth2-and-multiple-vso-accounts?forum=TFService

Это точное поведение, которое я тоже испытываю. Я могу получить токен и поговорить со своим личным экземпляром TFS, но когда я пытаюсь связаться с TFS, поддерживаемой AD, я получаю 401.

Я пытался использовать AD Oauth, но у него нет возможностей для VSO. (https://azure.microsoft.com/en-us/documentation/articles/active-directory-protocols-oauth-code/)

Кто-нибудь знает, как я могу выполнять вызовы API на сервер TFS с помощью Oauth из Azure AD?

Каковы ваши подробные сведения о TFS, поддерживаемой AD? Когда вы говорите, что он разговаривает с моим личным экземпляром TFS, используете ли вы vsts, такие как ((xxx.visualstudio.com) или TFS без предварительного уведомления (xx: 8080 / TFS)?   —  person Bert Cotton    schedule 13.10.2016

Я использую размещенное решение TFS (поэтому URL-адрес xxx.visualstudio.com). Я использовал термин TFS, поддерживаемый AD, потому что он использовался в комментарии в ответе сотрудника MS на этот вопрос: social.msdn.microsoft.com/Forums/vstudio/en- США /   —  person Bert Cotton    schedule 13.10.2016

Основываясь на моем тесте, я получаю тот же результат, токен доступа может получить доступ ко всем VSTS в разделе учетной записи Visual Studio Team Services (страница с информацией об учетной записи), но получаю результат 401, если я обращаюсь к VSTS с тем же токеном доступа, который в учетных записях в других организациях раздел. Кроме того, я не могу использовать ту же альтернативную учетную запись для доступа к этому VSTS.   —  person Bert Cotton    schedule 19.10.2016

См. также:  Как выполнить тихое обновление через неявный поток в Angular?
Понравилась статья? Поделиться с друзьями:
IT Шеф
Комментарии: 1
  1. Bert Cotton

    Даже с одной и той же учетной записью пользователя (адресом электронной почты) учетная запись Microsoft (MSA) и учетная запись Azure AD (AAD) имеют разные удостоверения в системе. Так что токен доступа для них должен быть другим.

    В качестве примера возьмем мою учетную запись:  введите описание изображения здесь У меня есть личная учетная запись VSTS с MSA (учетная запись Microsoft) и учетная запись AAD с (devtoolssupport). Когда я вхожу в «devtoolssupport» и выполняю аутентификацию OAuth, авторизованное приложение отображается только в «devtoolssupport», оно неприменимо для «учетной записи Microsoft». Поэтому авторизуйте приложение с помощью «Учетной записи Microsoft», вам нужно выбрать «Учетная запись Microsoft» на этой странице, а затем снова выполнить аутентификацию OAuth.

    Итак, как мне решить эту проблему? Пользователь переходит на https: // ‹mydomain› .com, и этот сайт выполняет вызов любого приложения .vssps.visualstudio.com / _signedin при использовании VSTS Oauth или login.microsoftonline.com/ при использовании Azure AD. Я хочу сделать вызов для токена VSTS OAuth и предоставить ресурс для visualstudio.com, но это не удается. person Bert Cotton; 23.10.2016

    За исключением того, что это не помогает фактическому надстройке TFS для Visual Studio ИЛИ веб-интерфейсу. person Bert Cotton; 24.11.2016

Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: