2016-10-13 3 views
0

Oauth 토큰을 얻고 API를 통해 TFS와 통신하는 응용 프로그램을 작성하려고합니다.
응용 프로그램 (https://app.vsaex.visualstudio.com)을 등록했으며 필요한 범위의 Oauth 토큰을 얻을 수 있습니다.Azure Active Directory에서 제공하는 Oauth를 사용하는 Team Foundation Server API

이 질문은 "누군가 Azure Active Directory에 의해 뒷받침되는 계정 중 하나입니까?"라고 묻는 Microsoft의 응답이 있습니다.

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

이것은 내가 너무 겪고있어 정확한 동작입니다. 토큰을 가져 와서 개인 TFS 인스턴스와 통화 할 수 있지만 AD 백업 TFS와 통신하려고하면 401이 표시됩니다.

AD Oauth를 사용해 보았지만 범위가 없습니다. VSO. (https://azure.microsoft.com/en-us/documentation/articles/active-directory-protocols-oauth-code/)

내가 Azure AD에서 Oauth를 사용하여 TFS 서버에 API 호출을하는 방법을 아는 사람이 있습니까?

+0

"광고 백업 TFS"의 의미는 무엇입니까? 내 개인 TFS 인스턴스와 대화 할 때, ((https://xxx.visualstudio.com) 또는 on-primse TFS (http : // xx : 8080/TFS)와 같은 vst를 사용하고 있습니까? –

+0

' (그래서 url은 xxx.visualstudio.com입니다.)이 질문에 MS 직원의 답변에 주석으로 사용 되었기 때문에 "AD backed TFS"라는 용어를 사용했습니다. https :// /social.msdn.microsoft.com/Forums/vstudio/en-US/9061abf8-7ee9-452f-99f1-2a84f8c16d85/vso-api-oauth2-and-multiple-vso-accounts?forum=TFService –

+0

내 테스트에 따르면, 같은 결과가 나오면 액세스 토큰은 Visual Studio Team Services 계정 섹션 (계정 정보 페이지)의 모든 VSTS에 액세스 할 수 있지만 다른 조직의 계정 섹션에있는 동일한 액세스 토큰을 사용하여 VSTS에 액세스하면 401 결과를 얻습니다. 이 VSTS에 액세스 할 때 동일한 대체 계정을 사용할 수 없습니다. –

답변

1

동일한 사용자 계정 (전자 메일 주소)을 사용하는 경우에도 Microsoft 계정 (MSA)과 Azure AD (AAD) 계정에는 시스템에 별도의 ID가 있습니다. 그래서 그들에 대한 액세스 토큰은 달라야합니다.

는 예를 들어 내 계정을 가지고 : enter image description here 나는 개인 VSTS는 MSA (Microsoft 계정)와 가진 AAD 계정 (devtoolssupport) 계정이 있습니다. "devtoolssupport"에 로그인하고 OAuth 인증을 수행하면 승인 된 응용 프로그램은 "devtoolssupport"에만 나열되며 "Microsoft 계정"에는 적용되지 않습니다. 따라서 "Microsoft 계정"으로 앱을 인증하려면이 페이지에서 "Microsoft 계정"을 선택한 다음 OAuth 인증을 다시 수행해야합니다.

+0

이 문제는 어떻게 처리합니까? 사용자가 https :// .com 및 그 사이트는 VSTS Oauth를 사용하는 경우 https://app.vssps.visualstudio.com/_signedin에 도전하거나 Azure AD를 사용하는 경우 login.microsoftonline.com/에 도전 할 것입니다. VSTS OAuth 토큰에 대한 도전 과제를 수행하고 visualstudio.com에 대한 리소스를 제공하려고하지만 오류가 발생합니다. –

+0

제외하고는 Visual Studio 또는 웹 UI 용 실제 TFS 추가 기능을 지원하지 않습니다. –