Prise en main de Stockage Blob Azure et .NET
Cet article montre comment se connecter au Stockage Blob Azure avec la bibliothèque de client du Stockage Blob Azure pour .NET. Une fois la connexion établie, votre code peut opérer sur les conteneurs, les blobs et les fonctionnalités du service Stockage Blob Azure.
Référence API | Code source de la bibliothèque | Package (NuGet) | Échantillons | Envoyer des commentaires
Prérequis
- Abonnement Azure : créez-en un gratuitement
- Compte de stockage Azure : créez un compte de stockage
- Dernière version du Kit de développement logiciel (SDK) .NET pour votre système d’exploitation. Veillez à disposer du Kit de développement logiciel (SDK), et non du runtime.
Configuration de votre projet
Cette section vous guide tout au long de la préparation d’un projet à utiliser avec la bibliothèque cliente Stockage Blob Azure pour .NET.
À partir du répertoire du projet, installez les packages des bibliothèques de client Stockage Blob Azure et Azure Identity à l’aide de la commande dotnet add package
. Le package Azure.Identity est nécessaire pour les connexions sans mot de passe aux services Azure.
dotnet add package Azure.Storage.Blobs
dotnet add package Azure.Identity
Ajoutez ces directives using
au début de votre fichier de code :
using Azure.Identity;
using Azure.Storage.Blobs;
using Azure.Storage.Blobs.Models;
using Azure.Storage.Blobs.Specialized;
Informations sur la bibliothèque de client de blob :
Azure.Storage.Blobs : contient les classes primaires (objets clients) que vous pouvez utiliser pour opérer sur le service, les conteneurs et les blobs.
Azure.Storage.Blobs.Specialized : contient des classes que vous pouvez utiliser pour effectuer des opérations spécifiques sur un type de blob comme des blobs de blocs.
Azure.Storage.Blobs.Models : ensemble des autres classes utilitaires, structures et types d’énumération.
Autoriser l’accès et la connexion au Stockage Blob
Pour connecter une application au stockage Blob, créez une instance de la classe BlobServiceClient. Cet objet est votre point de départ pour interagir avec les ressources de données au niveau du compte de stockage. Vous pouvez l’utiliser pour opérer sur le compte de stockage et ses conteneurs. Vous pouvez également utiliser le client de service pour créer des clients de conteneurs ou des clients d’objets blob, en fonction de la ressource que vous devez utiliser.
Pour en savoir plus sur la création et la gestion d’objets clients, consultez Créer et gérer des objets clients qui interagissent avec des ressources de données.
Vous pouvez autoriser un objet BlobServiceClient
en utilisant un jeton d’autorisation Microsoft Entra, une clé d’accès au compte ou une signature d’accès partagé (SAP). Pour une sécurité optimale, Microsoft recommande d’utiliser Microsoft Entra ID avec des identités managées pour autoriser les requêtes sur les données d’objet blob. Pour plus d’informations, consultez Autoriser l’accès aux objets blob avec Microsoft Entra ID.
Pour autoriser avec Microsoft Entra ID, vous devez utiliser un principal de sécurité. Le type de principal de sécurité dont vous avez besoin dépend de l’emplacement d’exécution de votre application. Utilisez ce tableau comme guide.
Où l’application s’exécute | Principal de sécurité | Assistance |
---|---|---|
Ordinateur local (développement et test) | Principal du service | Pour découvrir comment inscrire l’application, configurer un groupe Microsoft Entra, attribuer des rôles et configurer des variables d’environnement, consultez Autoriser l’accès à l’aide de principaux de service de développeur |
Ordinateur local (développement et test) | Identité de l’utilisateur | Pour découvrir comment configurer un groupe Microsoft Entra, attribuer des rôles et se connecter à Azure, consultez Autoriser l’accès à l’aide des informations d’identification du développeur |
Hébergé dans Azure | Identité managée | Pour savoir comment activer une identité managée et attribuer des rôles, consultez Autoriser l’accès à partir d’applications hébergées sur Azure en utilisant une identité managée. |
Hébergé en dehors d’Azure (par exemple, des applications locales) | Principal du service | Pour savoir comment inscrire l’application, attribuer des rôles et configurer des variables d’environnement, consultez Autoriser l’accès à partir d’applications locales en utilisant un principal de service d’application. |
Autoriser l’accès en utilisant DefaultAzureCredential
Un moyen simple et facile d’autoriser l’accès et de se connecter au Stockage Blob consiste à obtenir un jeton OAuth en créant une instance DefaultAzureCredential. Vous pouvez ensuite utiliser ces informations d’identification pour créer un objet BlobServiceClient.
L’exemple suivant crée un objet BlobServiceClient
autorisé à l’aide de DefaultAzureCredential
:
public BlobServiceClient GetBlobServiceClient(string accountName)
{
BlobServiceClient client = new(
new Uri($"https://{accountName}.blob.core.windows.net"),
new DefaultAzureCredential());
return client;
}
Si vous savez exactement quel type d’informations d’identification vous allez utiliser pour authentifier les utilisateurs, vous pouvez obtenir un jeton OAuth à l’aide d’autres classes dans la bibliothèque de client Azure Identity pour .NET. Ces classes dérivent de la classe TokenCredential.
Pour en savoir plus sur chacun de ces mécanismes d’autorisation, consultez Autoriser l’accès aux données dans Stockage Azure.
Générer votre application
Lorsque vous créez des applications pour travailler avec des ressources de données dans stockage Blob Azure, votre code interagit principalement avec trois types de ressources : comptes de stockage, conteneurs et objets blob. Si vous souhaitez en savoir plus sur ces types de ressources, sur leurs liens entre eux et sur l’interaction des applications avec les ressources, veuillez consulter la rubrique Comprendre comment les applications interagissent avec les ressources de données du Stockage Blob.
Les guides suivants vous montrent comment accéder aux données et effectuer des actions spécifiques à l’aide de la bibliothèque cliente Stockage Azure pour .NET :
Guide | Description |
---|---|
Ajouter des données à des blobs | Découvrez comment créer un blob d’ajout, puis ajouter des données à ce blob. |
Configurer une stratégie de nouvelle tentative | Implémentez des stratégies de nouvelle tentative pour les opérations du client. |
Copier des objets blob | Copiez un blob d’un emplacement à un autre. |
Créer un conteneur | Créez des conteneurs. |
Créer une SAP de délégation d’utilisateur | Créez une SAP de délégation d’utilisateur pour un conteneur ou un blob. |
Créer et gérer des baux de blob | Établissez et gérez un verrou sur un blob. |
Créer et gérer des baux de conteneur | Établissez et gérez un verrou sur un conteneur. |
Supprimer et restaurer des blobs | Supprimez des blobs et, si la suppression réversible est activée, restaurez des blobs supprimés. |
Supprimer et restaurer des conteneurs | Supprimez des conteneurs et, si la suppression réversible est activée, restaurez des conteneurs supprimés. |
Télécharger des objets blob | Téléchargez des blobs à l’aide de chaînes, de flux et de chemins d’accès de fichiers. |
Rechercher des blobs à l’aide d’étiquettes | Définissez et récupérez des étiquettes, puis utilisez-les pour rechercher des objets blob. |
Lister des objets blob | Répertoriez les blobs de différentes façons. |
Lister des conteneurs | Répertoriez les conteneurs dans un compte et les différentes options disponibles pour personnaliser une liste. |
Gérer des propriétés et des métadonnées | Obtenez et définissez des propriétés et des métadonnées pour des blobs. |
Gérer les propriétés et les métadonnées | Obtenez et définissez les propriétés et les métadonnées pour des conteneurs. |
Réglage des performances pour les transferts de données | Optimiser les performances des opérations de transfert de données. |
Définissez le niveau d’accès d’un blob | Définissez ou modifiez le niveau d’accès d’un objet blob de blocs. |
Charger des objets blob | Découvrez comment charger des blobs à l’aide de chaînes, de flux, de chemins d’accès de fichiers et d’autres méthodes. |