Авторизация доступа для AzCopy с помощью удостоверения пользователя

Проверка подлинности удостоверений пользователя обеспечивает простой способ авторизации операций AzCopy с помощью личных учетных данных идентификатора Microsoft Entra. Этот метод проверки подлинности идеально подходит для интерактивных сценариев, в которых вы вручную запускаете команды AzCopy или работаете в средах разработки.

В этой статье показано, как выполнить проверку подлинности AzCopy с помощью удостоверения пользователя с переменными среды, интерактивной команды входа AzCopy или использования существующих сеансов Azure CLI или Azure PowerShell.

Другие способы авторизации доступа к AzCopy см. в статье "Авторизация AzCopy".

Проверка назначений ролей

Убедитесь, что удостоверение пользователя имеет необходимую роль Azure для ваших предполагаемых операций:

Инструкции по назначению ролей см. в статье Назначение роли Azure для доступа к данным BLOB-объектов (Blob-хранилище) или Выбор способа авторизации доступа к данным файлов на портале Azure (файлы Azure).

Замечание

Для распространения назначений ролей может потребоваться до пяти минут.

Если вы передаете большие двоичные объекты в учетной записи с иерархическим пространством имен, вам не нужно назначать эти роли субъекту безопасности, если вы добавите ваш субъект безопасности в список управления доступом (ACL) целевого контейнера или каталога. В ACL субъект безопасности должен иметь разрешение на запись в целевом каталоге и разрешение на выполнение на контейнере и каждом родительском каталоге. Дополнительные сведения см. в статье " Модель управления доступом" в Azure Data Lake Storage.

Авторизация с помощью переменных среды

Чтобы авторизовать доступ, задайте переменные среды в памяти и выполните любую команду AzCopy. AzCopy извлекает маркер проверки подлинности, необходимый для выполнения операции. После завершения операции маркер удаляется из памяти. AzCopy извлекает маркер OAuth с помощью предоставленных учетных данных.

Убедившись, что ваша учетная запись пользователя имеет необходимую авторизацию, введите следующую команду и нажмите ENTER.

export AZCOPY_AUTO_LOGIN_TYPE=DEVICE

Затем выполните любую команду AzCopy (например: azcopy list https://contoso.blob.core.windows.net).

Эта команда возвращает код проверки подлинности и URL-адрес веб-сайта. Откройте веб-сайт, укажите код и нажмите кнопку "Далее ".

Создание контейнера

Откроется окно входа. В этом окне войдите в учетную запись Azure с помощью учетных данных учетной записи Azure. После успешного входа операция завершится.

Авторизация с помощью команды входа AzCopy

Вместо использования переменных в памяти авторизуйте доступ с помощью azcopy login команды.

Команда azcopy login получает токен OAuth, затем помещает этот токен в хранилище секретов на вашей системе. Если у вашей операционной системы нет хранилища секретов, например хранилища ключей Linux, команда azcopy login не работает, так как некуда поместить токен.

Убедившись, что удостоверение пользователя имеет необходимый уровень авторизации, откройте командную строку, введите следующую команду и нажмите клавишу ВВОД .

azcopy login

Если возникает ошибка, попробуйте включить идентификатор клиента организации, к которой принадлежит учетная запись хранения.

azcopy login --tenant-id=<tenant-id>

Замените <tenant-id> заполнитель идентификатором арендатора организации, к которой принадлежит учетная запись хранилища. Чтобы найти идентификатор арендатора, выберите Свойства арендатора > Идентификатор арендатора на портале Azure.

Эта команда возвращает код проверки подлинности и URL-адрес веб-сайта. Откройте веб-сайт, укажите код и нажмите кнопку "Далее ".

Создание контейнера

Откроется окно входа. В этом окне войдите в учетную запись Azure с помощью учетных данных учетной записи Azure. После успешного входа можно закрыть окно браузера и начать работу с AzCopy.

Авторизация с помощью Azure CLI

Если вы войдете с помощью Azure CLI, Azure CLI получает маркер OAuth, который AzCopy может использовать для авторизации операций.

Чтобы AzCopy использовал этот токен, введите следующую команду и нажмите клавишу ВВОД.

export AZCOPY_AUTO_LOGIN_TYPE=AZCLI
export AZCOPY_TENANT_ID=<tenant-id>

Дополнительные сведения о том, как войти в Azure с помощью Azure CLI, см. в разделе Интерактивный вход в Azure с использованием Azure CLI.

Авторизация с помощью Azure PowerShell

При входе с помощью Azure PowerShell Azure PowerShell получает маркер OAuth, который AzCopy может использовать для авторизации операций.

Чтобы AzCopy использовал этот токен, введите следующую команду и нажмите клавишу ВВОД.

$Env:AZCOPY_AUTO_LOGIN_TYPE="PSCRED"
$Env:AZCOPY_TENANT_ID=<tenant-id>

Дополнительные сведения о том, как войти с помощью Azure PowerShell, см. в разделе Вход в Azure PowerShell в интерактивном режиме.

Дальнейшие шаги

  • Дополнительные сведения об AzCopy см. в статье "Начало работы с AzCopy".

  • Если у вас есть вопросы, проблемы или общие отзывы, отправьте их на GitHub.