Aan de slag met Azure Blob Storage en .NET
In dit artikel leest u hoe u verbinding maakt met Azure Blob Storage met behulp van de Azure Blob Storage-clientbibliotheek voor .NET. Zodra u verbinding hebt gemaakt, gebruikt u de ontwikkelaarshandleidingen om te leren hoe uw code kan werken op containers, blobs en functies van de Blob Storage-service.
Als u wilt beginnen met een volledig voorbeeld, raadpleegt u quickstart: Azure Blob Storage-clientbibliotheek voor .NET.
Broncodepakket voor API-referentiebibliotheek | | (NuGet) | -voorbeelden | geven feedback
Vereisten
- Azure-abonnement: u kunt een gratis abonnement nemen
- Azure Storage-account: maak een opslagaccount
- Nieuwste .NET SDK voor uw besturingssysteem. Zorg ervoor dat u de SDK en niet de runtime ophaalt.
Uw project instellen
In deze sectie wordt uitgelegd hoe u een project voorbereidt voor gebruik met de Azure Blob Storage-clientbibliotheek voor .NET.
Installeer vanuit uw projectmap pakketten voor de Azure Blob Storage- en Azure Identity-clientbibliotheken met behulp van de dotnet add package
opdracht. Het Azure.Identity-pakket is nodig voor verbindingen zonder wachtwoord met Azure-services.
dotnet add package Azure.Storage.Blobs
dotnet add package Azure.Identity
Voeg deze using
instructies toe aan het begin van het codebestand:
using Azure.Identity;
using Azure.Storage.Blobs;
using Azure.Storage.Blobs.Models;
using Azure.Storage.Blobs.Specialized;
Informatie over de Blob-clientbibliotheek:
Azure.Storage.Blobs: bevat de primaire klassen (clientobjecten) die u kunt gebruiken om te werken op de service, containers en blobs.
Azure.Storage.Blobs.Specialized: bevat klassen die u kunt gebruiken om bewerkingen uit te voeren die specifiek zijn voor een blobtype, zoals blok-blobs.
Azure.Storage.Blobs.Models: Alle andere hulpprogrammaklassen, structuren en opsommingstypen.
Toegang autoriseren en verbinding maken met Blob Storage
Als u een app wilt verbinden met Blob Storage, maakt u een exemplaar van de BlobServiceClient-klasse . Dit object is het startpunt om te communiceren met gegevensbronnen op het niveau van het opslagaccount. U kunt het gebruiken om te werken op het opslagaccount en de bijbehorende containers. U kunt de serviceclient ook gebruiken om containerclients of blob-clients te maken, afhankelijk van de resource waarmee u moet werken.
Zie Clientobjecten maken en beheren die interactie hebben met gegevensbronnen voor meer informatie over het maken en beheren van clientobjecten.
U kunt een BlobServiceClient
object autoriseren met behulp van een Microsoft Entra-autorisatietoken, een toegangssleutel voor een account of een SAS (Shared Access Signature). Voor optimale beveiliging raadt Microsoft aan om Microsoft Entra ID met beheerde identiteiten te gebruiken om aanvragen voor blobgegevens te autoriseren. Zie Toegang tot blobs autoriseren met behulp van Microsoft Entra-id voor meer informatie.
Als u wilt autoriseren met Microsoft Entra-id, moet u een beveiligingsprincipaal gebruiken. Het type beveiligingsprincipaal dat u nodig hebt, is afhankelijk van waar uw app wordt uitgevoerd. Gebruik deze tabel als richtlijn.
Toegang autoriseren met DefaultAzureCredential
Een eenvoudige en veilige manier om toegang te verlenen en verbinding te maken met Blob Storage is door een OAuth-token te verkrijgen door een DefaultAzureCredential-exemplaar te maken. Vervolgens kunt u die referentie gebruiken om een BlobServiceClient-object te maken.
In het volgende voorbeeld wordt een BlobServiceClient
object gemaakt dat is geautoriseerd met:DefaultAzureCredential
public BlobServiceClient GetBlobServiceClient(string accountName)
{
BlobServiceClient client = new(
new Uri($"https://{accountName}.blob.core.windows.net"),
new DefaultAzureCredential());
return client;
}
Als u precies weet welk referentietype u gebruikt om gebruikers te verifiëren, kunt u een OAuth-token verkrijgen met behulp van andere klassen in de Azure Identity-clientbibliotheek voor .NET. Deze klassen zijn afgeleid van de klasse TokenCredential .
Zie Toegang tot gegevens in Azure Storage autoriseren voor meer informatie over elk van deze autorisatiemechanismen.
Uw app compileren
Wanneer u apps bouwt om te werken met gegevensresources in Azure Blob Storage, communiceert uw code voornamelijk met drie resourcetypen: opslagaccounts, containers en blobs. Voor meer informatie over deze resourcetypen, hoe deze zich verhouden tot elkaar en hoe apps communiceren met resources, raadpleegt u Begrijpen hoe apps communiceren met Blob Storage-gegevensresources.
De volgende handleidingen laten zien hoe u toegang krijgt tot gegevens en specifieke acties uitvoert met behulp van de Azure Storage-clientbibliotheek voor .NET:
Guide | Beschrijving |
---|---|
Gegevens toevoegen aan blobs | Leer hoe u een toevoeg-blob maakt en vervolgens gegevens toevoegt aan die blob. |
Beleid voor opnieuw proberen configureren | Implementeer beleid voor opnieuw proberen voor clientbewerkingen. |
Blobs kopiëren | Kopieer een blob van de ene locatie naar de andere. |
Een container maken | Containers maken. |
Een SAS voor gebruikersdelegatie maken | Maak een SAS voor gebruikersdelegering voor een container of blob. |
Blob-leases maken en beheren | Een vergrendeling op een blob tot stand brengen en beheren. |
Containerleases maken en beheren | Een vergrendeling voor een container tot stand brengen en beheren. |
Blobs verwijderen en herstellen | Verwijder blobs en als voorlopig verwijderen is ingeschakeld, herstelt u verwijderde blobs. |
Containers verwijderen en herstellen | Verwijder containers en als voorlopig verwijderen is ingeschakeld, herstelt u verwijderde containers. |
Blobs downloaden | Download blobs met behulp van tekenreeksen, streams en bestandspaden. |
Blobs zoeken met behulp van tags | Stel tags in en haal ze op en gebruik tags om blobs te zoeken. |
Blobs vermelden | Geef blobs op verschillende manieren weer. |
Containers weergeven | Lijst met containers in een account en de verschillende opties die beschikbaar zijn om een vermelding aan te passen. |
Eigenschappen en metagegevens beheren | Eigenschappen en metagegevens voor blobs ophalen en instellen. |
Eigenschappen en metagegevens beheren | Eigenschappen en metagegevens voor containers ophalen en instellen. |
Prestaties afstemmen voor gegevensoverdracht | Optimaliseer de prestaties voor gegevensoverdrachtbewerkingen. |
De toegangslaag van een blob instellen of wijzigen | Stel de toegangslaag voor een blok-blob in of wijzig deze. |
Blobs uploaden | Meer informatie over het uploaden van blobs met behulp van tekenreeksen, streams, bestandspaden en andere methoden. |