Démarrage rapide : Créer, télécharger et lister des objets blob avec Azure CLI

L’interface de ligne de commande Azure (Azure CLI) est l’expérience de ligne de commande d’Azure pour gérer les ressources Azure. Vous pouvez l’utiliser dans votre navigateur avec Azure Cloud Shell. Vous pouvez également l’installer sur Windows, Linux ou MacOS, et l’exécuter à partir de la ligne de commande. Dans ce guide de démarrage rapide, vous apprenez à utiliser Azure CLI pour charger et télécharger des données vers et à partir du stockage Blob Azure.

Prérequis

Pour accéder à Stockage Azure, vous avez besoin d’un abonnement Azure. Si vous n’avez pas d’abonnement, vous pouvez créer un compte gratuit avant de commencer.

Tous les accès à Stockage Azure se font via un compte de stockage. Pour ce guide de démarrage rapide, créez un compte de stockage à l’aide du portail Azure, d’Azure PowerShell ou de l’interface Azure CLI. Pour obtenir de l’aide sur la création d’un compte de stockage, consultez Créer un compte de stockage.

Préparation de votre environnement pour Azure CLI

  • Cet article nécessite la version 2.0.46 ou ultérieure de l’interface Azure CLI. Si vous utilisez Azure Cloud Shell, la version la plus récente est déjà installée.

Autoriser l’accès au stockage Blob

Vous pouvez autoriser l’accès au stockage Blob à partir d’Azure CLI avec des informations d’identification Microsoft Entra ou en utilisant la clé d’accès au compte de stockage. Il est recommandé d’utiliser les informations d’identification de Microsoft Entra. Cet article explique comment autoriser les opérations de stockage Blob en utilisant Microsoft Entra ID.

Les commandes Azure CLI pour les opérations de données sur le stockage Blob prennent en charge le paramètre --auth-mode, qui vous permet de spécifier la façon dont une opération donnée est autorisée. Définissez le paramètre --auth-mode sur login pour autoriser l’accès avec les informations d’identification Microsoft Entra. Pour plus d’informations, consultez Autoriser l’accès aux données d’objet blob et de file d’attente avec Azure CLI.

Seules les opérations sur les données de stockage Blob prennent en charge le paramètre --auth-mode. Les opérations de gestion, comme la création d’un groupe de ressources ou d’un compte de stockage, utilisent automatiquement des informations d’identification Microsoft Entra pour l’autorisation.

Pour commencer, connectez-vous à votre compte Azure avec la commande az login.

az login

Créer un groupe de ressources

Créez un groupe de ressources Azure avec la commande az group create. Un groupe de ressources est un conteneur logique dans lequel les ressources Azure sont déployées et gérées.

N’oubliez pas de remplacer les valeurs d’espace réservé entre crochets par vos propres valeurs :

az group create \
    --name <resource-group> \
    --location <location>

Créez un compte de stockage.

Créez un compte de stockage à usage général avec la commande az storage account create. Le compte de stockage à usage général peut être utilisé pour les quatre services : objets blob, fichiers, tables et files d’attente.

N’oubliez pas de remplacer les valeurs d’espace réservé entre crochets par vos propres valeurs :

az storage account create \
    --name <storage-account> \
    --resource-group <resource-group> \
    --location <location> \
    --sku Standard_ZRS \
    --encryption-services blob

Créez un conteneur.

Les objets blob sont toujours chargés dans un conteneur. Vous pouvez organiser des groupes d’objets blob dans des conteneurs de la même façon que vous organisez vos fichiers dans les dossiers de l’ordinateur. Créez un conteneur pour stocker des objets blob avec la commande az storage container create.

L’exemple suivant utilise votre compte Microsoft Entra pour autoriser l’opération à créer le conteneur. Avant de créer le conteneur, attribuez-vous le rôle Contributeur aux données Blob du stockage. Même si vous êtes le propriétaire du compte, vous avez besoin d’autorisations explicites pour effectuer des opérations de données sur le compte de stockage. Pour plus d’informations sur l’attribution de rôles Azure, consultez Attribuer un rôle Azure pour l’accès aux données d’objet blob.

N’oubliez pas de remplacer les valeurs d’espace réservé entre crochets par vos propres valeurs :

az ad signed-in-user show --query id -o tsv | az role assignment create \
    --role "Storage Blob Data Contributor" \
    --assignee @- \
    --scope "/subscriptions/<subscription>/resourceGroups/<resource-group>/providers/Microsoft.Storage/storageAccounts/<storage-account>"

az storage container create \
    --account-name <storage-account> \
    --name <container> \
    --auth-mode login

Important

La propagation des attributions de rôles Azure peut prendre plusieurs minutes.

Vous pouvez également utiliser la clé de compte de stockage pour autoriser l’opération de création du conteneur. Pour plus d’informations sur l’autorisation d’opérations de données avec Azure CLI, consultez Autoriser l’accès aux données d’objet blob et de file d’attente avec Azure CLI.

Charger un objet blob

Stockage Blob prend en charge les objets blob de blocs, d’ajout et de pages. Les exemples de ce guide de démarrage rapide montrent comment utiliser des objets blob de blocs.

Commencez par créer un fichier à charger dans un objet blob de blocs. Si vous utilisez Azure Cloud Shell, utilisez la commande suivante pour créer un fichier :

vi helloworld

Lorsque le fichier s’ouvre, appuyez sur Insérer. Entrez Hello world, puis appuyez sur Échap. Entrez ensuite :x, puis appuyez sur Entrée.

Dans cet exemple, vous chargez un objet blob dans le conteneur que vous avez créé à la dernière étape avec la commande az storage blob upload. Il n’est pas nécessaire de spécifier le chemin du fichier, car celui-ci a été créé dans le répertoire racine. N’oubliez pas de remplacer les valeurs d’espace réservé entre crochets par vos propres valeurs :

az storage blob upload \
    --account-name <storage-account> \
    --container-name <container> \
    --name myFile.txt \
    --file myFile.txt \
    --auth-mode login

Cette opération crée l’objet blob s’il n’existe pas déjà, et le remplace s’il existe. Chargez autant de fichiers que vous le souhaitez avant de continuer.

Lorsque vous chargez un objet blob avec Azure CLI, il émet des appels d’API REST respectifs au moyen des protocoles HTTP et HTTPS.

Pour charger plusieurs fichiers à la fois, vous pouvez utiliser la commande az storage blob upload-batch.

Créer la liste des objets blob d’un conteneur

Listez les objets blob d’un conteneur avec la commande az storage blob list. N’oubliez pas de remplacer les valeurs d’espace réservé entre crochets par vos propres valeurs :

az storage blob list \
    --account-name <storage-account> \
    --container-name <container> \
    --output table \
    --auth-mode login

Télécharger un objet blob

Utilisez la commande az storage blob download pour télécharger l’objet blob chargé au préalable. N’oubliez pas de remplacer les valeurs d’espace réservé entre crochets par vos propres valeurs :

az storage blob download \
    --account-name <storage-account> \
    --container-name <container> \
    --name myFile.txt \
    --file <~/destination/path/for/file> \
    --auth-mode login

Transfert de données avec AzCopy

L’utilitaire en ligne de commande AzCopy assure un transfert de données hautement performant et scriptable pour Stockage Azure. Vous pouvez utiliser AzCopy pour transférer des données depuis et vers le stockage Blob et Azure Files. Pour plus d’informations sur AzCopy v10, la dernière version d’AzCopy, consultez Bien démarrer avec AzCopy. Pour plus d’informations sur l’utilisation d’AzCopy v10 avec le stockage Blob, consultez Transférer des données avec AzCopy et le stockage Blob.

L’exemple suivant utilise AzCopy pour charger un fichier local dans un objet blob. Pensez à remplacer les valeurs de l’exemple par vos propres valeurs :

azcopy login
azcopy copy 'C:\myDirectory\myFile.txt' 'https://mystorageaccount.blob.core.windows.net/mycontainer/myFile.txt'

Nettoyer les ressources

Si vous voulez supprimer les ressources que vous avez créées dans le cadre de ce guide de démarrage rapide, notamment le compte de stockage, supprimez le groupe de ressources à l’aide de la commande az group delete. N’oubliez pas de remplacer les valeurs d’espace réservé entre crochets par vos propres valeurs :

az group delete \
    --name <resource-group> \
    --no-wait

Étapes suivantes

Dans ce guide de démarrage rapide, vous avez appris à transférer des fichiers entre un système de fichiers local et un conteneur du stockage Blob Azure. Pour en savoir plus sur l’utilisation du stockage blob avec Azure CLI, sélectionnez une option ci-dessous.