
Я пытаюсь понять, как работает вход в Azure CLI. Я уже вошел с помощью:
az login
и все вроде бы работает отлично, но когда я пытаюсь запустить любые другие команды, например:
az storage blob list --container-name my_container
сообщается:
Отсутствуют учетные данные для доступа к хранилищу.
Я совершенно не понимаю, как работают учетные данные и логины для Azure. Поскольку токен доступа уже предоставлен через логин, не должны ли все остальные команды работать без дальнейшей необходимости аутентификации? Если нет, то в чем смысл логина?
решение1
Ваш az storage blob list --container-name my_container
командлет неполный, когда вы запускаете команду в оболочке Azure, он выдает сообщение об ошибке ниже. Я понимаю, что сообщение об отсутствии учетных данных может вызвать путаницу, поскольку это не обязательно, но если вы посмотрите на номер 3 в списке, вы увидите, что вам нужно указать имя учетной записи хранения для данного контейнера.
Отсутствуют учетные данные для доступа к хранилищу. Принимаются следующие варианты:
- имя учетной записи и ключ (параметры --account-name и --account-key или установите переменные среды AZURE_STORAGE_ACCOUNT и AZURE_STORAGE_KEY)
- имя учетной записи и токен SAS (опция --sas-token используется либо с опцией --account-name, либо с переменной среды AZURE_STORAGE_ACCOUNT)
- имя учетной записи (опция --account-name или переменная среды AZURE_STORAGE_ACCOUNT; это позволит выполнить вызовы для запроса ключа учетной записи хранения с использованием учетных данных для входа)
- строка подключения (опция --connection-string или установите переменную среды AZURE_STORAGE_CONNECTION_STRING); некоторые оболочки потребуют заключения в кавычки для сохранения буквальной интерпретации символов.
Попробуйте выполнить следующие действия, указав соответствующее имя контейнера и имя учетной записи хранения:
az storage blob list --container-name CONTAINER_NAME --account-name STORAGE_ACCOUNT_NAME