Каждый из упомянутых вами сервисов имеет свой собственный API:
Это, однако, не означает, что каждый из них также нуждается в собственном «приложении». Когда вы регистрируете свое приложение в Azure AD через портал Azure , вы можете запросить доступ к нескольким API. Каждый access_token
, который вы получите, будет привязан к одному API (так называемому «ресурсу»), но вы можете использовать refresh_token
для переключения целевого ресурса:
Единственное исключение здесь - API-интерфейс VSTS REST. В то время как большинство API используют одного и того же провайдера идентификации, у VSTS есть свой. Таким образом, для целей VSTS вам нужно будет отдельно аутентифицировать пользователя. Очевидно, что это не очень удобно для пользователя, но есть полезный обходной путь: Персональные токены доступа .
Использование персонального токена доступа для VSTS позволяет аутентифицировать пользователя с помощью OAuth Azure AD и получить токен доступа, который можно использовать с Microsoft Graph и API-интерфейсом REST Azure. После их аутентификации вы можете попросить их предоставить личный токен доступа для доступа к VSTS. Это позволяет вам забыть попросить пользователя выполнить аутентификацию во второй раз, так как вы сохраните его PAT, используйте его для любых вызовов VSTS.