Поток учетных данных клиента для Azure DevOps - PullRequest
0 голосов
/ 26 марта 2020

Я смотрел на эту проблему в течение нескольких дней и по своему опыту знаю, что обычно все решаю, но на этот раз я столкнулся с кирпичной стеной.

Сценарий

У меня есть python приложение, которое создается в конвейере Azure DevOps YAML. Приложение вызывает Azure DevOps REST API для создания репозитория

Приложение использует PAT (токен личного доступа) для аутентификации

Во-первых, проблема в том, что личный токен доступа связан со мной как человек-пользователь. Если я покину компанию, PAT будет аннулирован, что не годится для приложения, которое должно работать в не-пользовательском контексте.

Так что теперь я хочу настроить мое Python приложение для аутентификации на Azure DevOps REST API с использованием потока учетных данных клиента.

Моя проблема в том, что я не могу найти непротиворечивую информацию об этом.

Я создал приложение в Azure DevOps:

enter image description here

Мой план состоял бы в том, чтобы все это работало в Почтальоне, а затем перенеси мои выводы в код Python. Так что на самом деле, я ищу помощь с настройкой, которую я делаю в Postman, и я могу самостоятельно отработать все остальное в Python.

Во многих сообщениях говорится о Azure DevOps и Azure AAD (Azure Active Directory), но, видя, как я создаю регистрацию приложения в Azure DevOps, как показано на рисунке, я не понимаю, почему я что-то делал в AAD. (Обратите внимание, что мой Azure экземпляр DevOps был создан за пределами Azure. Azure ничего не знает о моем Azure экземпляре DevOps)

Любые указатели на ПРАВИЛЬНУЮ информацию о том, как это сделать, будут хорошими. И помните, мне определенно нужен поток типов учетных данных клиента. Между моим приложением и Azure DevOps REST API нет человеческого взаимодействия.

Обновление

Вот что у меня есть в Почтальоне прямо сейчас: enter image description here Примечание:

  • Вы можете видеть флажки, которые я использую для включения и выключения пар ключ / значение ключа x / www-form-urlencoded
  • the resource - 499b84a c -1321-427f-aa17-267ca6975798 , по-видимому, GUID для Azure DevOps и не изменяется
  • Если я загляну внутрь HTML из ошибки 500 я вижу это: Не удалось найти раздел для hostId: 499b84a c -1321-427f-aa17-267ca6975798 , который является GUID ресурса DevOps, упомянутым выше.

И вот 500 ошибок, которые я получаю от Azure Девопс: enter image description here

Это все очень запутанно, но я уверен, что мне просто нужно настроить одну или две вещи чтобы заставить его работать.

1 Ответ

1 голос
/ 27 марта 2020

Я хочу использовать поток client_credential в Azure DevOps по тем же причинам, что и вы! В прошлый раз я говорил с поддержкой, они сказали мне, что это запланировано на третий квартал 2020 года . Просмотр дорожной карты Я не вижу ее там в данный момент. Я также не смог увидеть какие-либо запросы функций, которые в данный момент подняты на Dev Community , поэтому вы можете попытаться поднять профиль этой проблемы там.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...