Я использую Azure Devops CLI на одном из моих конвейеров. Для того, чтобы использовать CLI, мне нужно сначала войти (аутентифицироваться). В отличие от использования REST API, я не могу использовать токен OAuth, который мне доступен.
Итак, вот мое понимание моих опций:
- Я могу сделать "логин" "используя PAT, который я сопоставляю с этой переменной среды:
AZURE_DEVOPS_EXT_PAT
ЭТО ПУТЬ Я делаю это сейчас.
Видимо, вы можете использовать принципала обслуживания. Мне это нравится больше всего, потому что теоретически я должен иметь возможность применять этот принцип ко всем членам моей команды. Это правильно?
Используйте «az login» с именем пользователя и паролем. Это наименее желательный способ сделать это, потому что он включает передачу учетных данных. Слишком грязно.
Хотя мой конвейер имеет экспозицию токена OAuth (System.AccessToken), он не может быть использован CLI. Например, я пытаюсь присвоить значение токена OAuth для AZURE_DEVOPS_EXT_PAT, в котором он не работает (AZURE_DEVOPS_EXT_PAT = $ System.AccessToken).
Вопросы:
Можно ли использовать токен OAuth для входа в CLI?
Является ли принципал обслуживания лучшим способом для go?
Дополнительная информация:
У меня нет подписок, только идентификатор клиента, мы не создаем ресурсы Azure, мы - магазин AWS, который случается, использует ADO только для CICD.