Delen via


Azure Storage Blob Key Store voor Microsoft.AspNetCore.DataProtection

Met Azure.Extensions.AspNetCore.DataProtection.Blobs het pakket kunt u ASP.NET Core DataProtection-sleutels opslaan in Azure Blob Storage. Sleutels kunnen worden gedeeld tussen verschillende exemplaren van een web-app. Apps kunnen verificatiecookies of CSRF-beveiliging delen op meerdere servers.

Aan de slag

Het pakket installeren

Installeer het pakket met NuGet:

dotnet add package Azure.Extensions.AspNetCore.DataProtection.Blobs

Vereisten

U hebt een Azure-abonnement, opslagaccount en opslagcontainer nodig om dit pakket te kunnen gebruiken.

Als u een nieuw opslagaccount wilt maken, kunt u azure portal, Azure PowerShell of de Azure CLI gebruiken. Hier volgt een voorbeeld van het gebruik van de Azure CLI:

az storage account create --name <storage-account> --resource-group <resource-group> --location westus --sku Standard_LRS
az storage container create --account-name <storage-account> -n <container>

# Give write access to a user
az role assignment create --role "Storage Blob Data Contributor" --assignee <your_email> --scope "/subscriptions/<subscription>/resourceGroups/<resource-group>/providers/Microsoft.Storage/storageAccounts/<storage-account>/blobServices/default/containers/<container>"

# OR give write access to a service principal (application)
az role assignment create --role "Storage Blob Data Contributor" --assignee-object-id <application_id> --scope "/subscriptions/<subscription>/resourceGroups/<resource-group>/providers/Microsoft.Storage/storageAccounts/<storage-account>/blobServices/default/containers/<container>"

Belangrijkste concepten

Veiligheid van schroefdraad

We garanderen dat alle clientexemplaren veilig zijn en onafhankelijk van elkaar zijn (richtlijn). Dit zorgt ervoor dat de aanbeveling om clientexemplaren opnieuw te gebruiken altijd veilig is, zelfs voor alle threads.

Aanvullende concepten

Clientopties | Toegang tot het antwoord | Langlopende bewerkingen | Fouten | afhandelen Diagnostics | Spottende | Clientlevensduur

Voorbeelden

Als u permanente sleutels wilt inschakelen voor Azure Blob Storage roept u de PersistKeysToAzureBlobStorage methode aan. De Uri opgegeven moet een blob-URI zijn in de volgende vorm https://{storage_account}.blob.core.windows.net/{container}/{blob}.

public void ConfigureServices(IServiceCollection services)
{
    services
        .AddDataProtection()
        .PersistKeysToAzureBlobStorage(new Uri("<full-blob-URI>"), new DefaultAzureCredential());
}

De Azure Identity-bibliotheek biedt eenvoudige Azure Active Directory-ondersteuning voor verificatie.

Verifiëren met behulp van een connection string

public void ConfigureServices(IServiceCollection services)
{
    services
        .AddDataProtection()
        .PersistKeysToAzureBlobStorage("<connection string>", "<container name>", "<blob name>");
}

Volgende stappen

Meer informatie over DataProtection in ASP.NET Core.

Bijdragen

Wij verwelkomen bijdragen en suggesties voor dit project. Voor de meeste bijdragen moet u instemmen met een licentieovereenkomst voor bijdragers (CLA: Contributor License Agreement) waarin u verklaart dat u gerechtigd bent ons het recht te geven uw bijdrage te gebruiken, en dat u dit ook doet. Ga naar cla.microsoft.com voor meer informatie.

Op dit project is de Microsoft Open Source Code of Conduct (Microsoft Open Source-gedragscode) van toepassing. Zie de Veelgestelde vragen over de gedragscode voor meer informatie of neem contact op opencode@microsoft.com met eventuele aanvullende vragen of opmerkingen.

Weergaven