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.
Azure SDK for .NET