Share via


Kom igång med Azure Blob Storage och .NET

Den här artikeln visar hur du ansluter till Azure Blob Storage med hjälp av Azure Blob Storage-klientbiblioteket för .NET. När koden är ansluten kan den fungera på containrar, blobar och funktioner i Blob Storage-tjänsten.

API-referensBibliotekets källkodspaket | (NuGet)- | exempel | Ge feedback |

Förutsättningar

Konfigurera projektet

Det här avsnittet beskriver hur du förbereder ett projekt för att arbeta med Azure Blob Storage-klientbiblioteket för .NET.

Från projektkatalogen installerar du paket för Azure Blob Storage- och Azure Identity-klientbiblioteken med hjälp av dotnet add package kommandot . Azure.Identity-paketet behövs för lösenordslösa anslutningar till Azure-tjänster.

dotnet add package Azure.Storage.Blobs
dotnet add package Azure.Identity

Lägg till dessa using instruktioner överst i kodfilen.

using Azure.Identity;
using Azure.Storage.Blobs;
using Azure.Storage.Blobs.Models;
using Azure.Storage.Blobs.Specialized;

Information om Blob-klientbiblioteket:

  • Azure.Storage.Blobs: Innehåller de primära klasser (klientobjekt) som du kan använda för att arbeta med tjänsten, containrar och blobar.

  • Azure.Storage.Blobs.Specialized: Innehåller klasser som du kan använda för att utföra åtgärder som är specifika för en blobtyp, till exempel blockblobar.

  • Azure.Storage.Blobs.Models: Alla andra verktygsklasser, strukturer och uppräkningstyper.

Auktorisera åtkomst och ansluta till Blob Storage

Om du vill ansluta ett program till Blob Storage skapar du en instans av klassen BlobServiceClient . Det här objektet är startpunkten för att interagera med dataresurser på lagringskontonivå. Du kan använda den för att arbeta med lagringskontot och dess containrar. Du kan också använda tjänstklienten för att skapa containerklienter eller blobklienter, beroende på vilken resurs du behöver arbeta med.

Mer information om hur du skapar och hanterar klientobjekt finns i Skapa och hantera klientobjekt som interagerar med dataresurser.

Du kan auktorisera ett BlobServiceClient objekt med hjälp av en Microsoft Entra-auktoriseringstoken, en kontoåtkomstnyckel eller en signatur för delad åtkomst (SAS).

Mer information om var och en av dessa auktoriseringsmekanismer finns i Auktorisera åtkomst till data i Azure Storage.

Om du vill auktorisera med Microsoft Entra-ID måste du använda ett säkerhetsobjekt. Vilken typ av säkerhetsobjekt du behöver beror på var programmet körs. Använd den här tabellen som en guide.

Där programmet körs Säkerhetsobjekt Vägledning
Lokal dator (utveckla och testa) Tjänstens huvudnamn Information om hur du registrerar appen, konfigurerar en Microsoft Entra-grupp, tilldelar roller och konfigurerar miljövariabler finns i Auktorisera åtkomst med utvecklartjänstens huvudnamn
Lokal dator (utveckla och testa) Användaridentitet Information om hur du konfigurerar en Microsoft Entra-grupp, tilldelar roller och loggar in på Azure finns i Auktorisera åtkomst med autentiseringsuppgifter för utvecklare
Värdhanterad i Azure Hanterad identitet Information om hur du aktiverar hanterad identitet och tilldelar roller finns i Auktorisera åtkomst från Azure-värdbaserade appar med hjälp av en hanterad identitet
Värdhanterad utanför Azure (till exempel lokala appar) Tjänstens huvudnamn Information om hur du registrerar appen, tilldelar roller och konfigurerar miljövariabler finns i Auktorisera åtkomst från lokala appar med hjälp av ett huvudnamn för programtjänsten

Auktorisera åtkomst med defaultAzureCredential

Ett enkelt och säkert sätt att auktorisera åtkomst och ansluta till Blob Storage är att hämta en OAuth-token genom att skapa en DefaultAzureCredential-instans . Du kan sedan använda autentiseringsuppgifterna för att skapa ett BlobServiceClient-objekt .

I följande exempel skapas ett BlobServiceClient objekt som har auktoriserats med hjälp av DefaultAzureCredential:

public BlobServiceClient GetBlobServiceClient(string accountName)
{
    BlobServiceClient client = new(
        new Uri($"https://{accountName}.blob.core.windows.net"),
        new DefaultAzureCredential());

    return client;
}

Om du vet exakt vilken typ av autentiseringsuppgifter du ska använda för att autentisera användare kan du hämta en OAuth-token med hjälp av andra klasser i Azure Identity-klientbiblioteket för .NET. Dessa klasser härleds från klassen TokenCredential .

Mer information om var och en av dessa auktoriseringsmekanismer finns i Auktorisera åtkomst till data i Azure Storage.

Skapa ditt program

När du skapar program för att arbeta med dataresurser i Azure Blob Storage interagerar koden främst med tre resurstyper: lagringskonton, containrar och blobar. Mer information om dessa resurstyper, hur de relaterar till varandra och hur appar interagerar med resurser finns i Förstå hur appar interagerar med Blob Storage-dataresurser.

Följande guider visar hur du arbetar med dataresurser och utför specifika åtgärder med hjälp av Azure Storage-klientbiblioteket för .NET:

Guide Description
Skapa en container Skapa containrar.
Ta bort och återställa containrar Ta bort containrar och återställ borttagna containrar om mjuk borttagning är aktiverat.
Lista containrar Visa en lista över containrar i ett konto och de olika alternativ som är tillgängliga för att anpassa en lista.
Hantera egenskaper och metadata Hämta och ange egenskaper och metadata för containrar.
Skapa och hantera containerlån Upprätta och hantera ett lås på en container.
Skapa och hantera bloblån Upprätta och hantera ett lås på en blob.
Lägga till data i blobar Lär dig hur du skapar en tilläggsblob och sedan lägger till data i den bloben.
Ladda upp blobar Lär dig hur du laddar upp blobar med hjälp av strängar, strömmar, filsökvägar och andra metoder.
Ladda ned blobar Ladda ned blobar med hjälp av strängar, strömmar och filsökvägar.
Kopiera blobar Kopiera en blob från en plats till en annan.
Lista blobar Lista blobar på olika sätt.
Ta bort och återställa Ta bort blobar och återställ borttagna blobar om mjuk borttagning är aktiverat.
Hitta blobar med taggar Ange och hämta taggar och använd taggar för att hitta blobar.
Hantera egenskaper och metadata Hämta och ange egenskaper och metadata för blobar.
Ange eller ändra åtkomstnivån för en blob Ange eller ändra åtkomstnivån för en blockblob.

Se även