Мне нужно создать организационный канал для размещения пакетов nuget, совместно используемых проектами в нашей среде Azure DevOps.
После нескольких неудачных попыток и исследований я обнаружил, что единственный способ создать организационный канал - это Разработано из уст Microsoft, Azure DevOps API.
Источник заявки: Этот вопрос по сообществу разработчиков VS и Документы MS по каналам в рамках проекта
По сути, мне просто нужно иметь возможность выполнить POST здесь: https://feeds.dev.azure.com/ {организация} / _ apis / packaging / feeds? Api-version = 5.1-preview.1
с телом:
{
"name": "{myfeedname}",
"hideDeletedPackageVersions": true,
"upstreamEnabled": true
}
И, конечно же, жетон на предъявителя для аутентификации себя. Это тот момент, когда я в замешательстве.
Какой самый простой способ получить его? Я вошел в систему через учетную запись Microsoft AD моей компании в браузере компьютера на Azure DevOps. Я не вижу токенов на предъявителя, которые я могу «украсть» для использования в PostMan в моих инструментах разработки для браузера.
Документы API описывают некоторую соответствующую информацию, но я запутался в как использовать его в Почтальоне:
Безопасность oauth2
Тип: oauth2
Поток: accessCode
URL авторизации: https://app.vssps.visualstudio.com/oauth2/authorize&response_type=Assertion
URL-адрес токена: https://app.vssps.visualstudio.com/oauth2/token?client_assertion_type=urn: ietf: params: oauth: тип подтверждения клиента: jwt-bearer & grant_type = urn: ietf: params: oauth: тип-гранта: jwt- Носитель
Области Имя Описание
vso.packaging_write Предоставляет возможность создавать и читать каналы и пакеты.
Здесь представлен интерфейс в Postman для OAuth2 :
Я могу видеть, как информация в документах относится к полям 1 - 2 - 3 - 4, но затем, какой URL обратного вызова я должен использовать? Какие полномочия? мой адрес электронной почты Microsoft + пароль от AD?
Я попробовал это, и все, что я, кажется, получаю от Почтальона:
{"$id":"1","innerException":null,"message":"A potentially dangerous Request.Path value was detected from the client (&).","typeName":"System.Web.HttpException, System.Web","typeKey":"HttpException","errorCode":0,"eventId":0}
TLDR
Как правильно перейти к получению токена с Почтальоном, или другой инструмент для ручного выполнения моего одноразового запроса к Azure DevOps REST API?
примечания:
Следующая информация здесь: Невозможно получить код авторизации для Devops, используя Postman oAuth2. 0 , ведущий здесь: https://github.com/Microsoft/azure-devops-auth-samples/tree/master/OAuthWebSample, я понимаю, что мне нужно зарегистрироваться и запустить целое веб-приложение. Я правильно понимаю? Я там более простой способ?