Úložiště klíčů objektů blob služby Azure Storage pro Microsoft.AspNetCore.DataProtection
Balíček Azure.Extensions.AspNetCore.DataProtection.Blobs
umožňuje ukládání klíčů ASP.NET Core DataProtection do Azure Blob Storage. Klíče je možné sdílet napříč několika instancemi webové aplikace. Aplikace můžou sdílet ověřovací soubory cookie nebo ochranu CSRF na více serverech.
Začínáme
Instalace balíčku
Nainstalujte balíček pomocí NuGetu:
dotnet add package Azure.Extensions.AspNetCore.DataProtection.Blobs
Požadavky
K použití tohoto balíčku potřebujete předplatné Azure, účet úložiště a kontejner úložiště .
K vytvoření nového účtu úložiště můžete použít Azure Portal, Azure PowerShell nebo Azure CLI. Tady je příklad použití 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>"
Klíčové koncepty
Bezpečnost vlákna
Zaručujeme, že všechny metody instance klienta jsou bezpečné pro přístup z více vláken a nezávislé na sobě (pokyny). Tím se zajistí, že doporučení opakovaného použití instancí klienta bude vždy bezpečné, a to i napříč vlákny.
Další koncepty
Možnosti | klienta Přístup k odpovědi | Dlouhotrvající operace | Zpracování selhání | Diagnostika | Zesměšňovat | Životnost klienta
Příklady
Pokud chcete povolit trvalé klíče pro Azure Blob Storage zavolejte metoduPersistKeysToAzureBlobStorage
. Zadaným Uri
identifikátorem musí být identifikátor URI objektu blob v následujícím formátu https://{storage_account}.blob.core.windows.net/{container}/{blob}
.
public void ConfigureServices(IServiceCollection services)
{
services
.AddDataProtection()
.PersistKeysToAzureBlobStorage(new Uri("<full-blob-URI>"), new DefaultAzureCredential());
}
Knihovna identit Azure poskytuje snadnou podporu ověřování v Azure Active Directory.
Ověřování pomocí připojovacího řetězce
public void ConfigureServices(IServiceCollection services)
{
services
.AddDataProtection()
.PersistKeysToAzureBlobStorage("<connection string>", "<container name>", "<blob name>");
}
Další kroky
Přečtěte si další informace o ochraně dat v ASP.NET Core.
Přispívání
Tento projekt vítá příspěvky a návrhy. Většina příspěvků vyžaduje souhlas s licenční smlouvou s přispěvatelem (CLA), která stanoví, že máte právo udělit nám práva k používání vašeho příspěvku a skutečně tak činíte. Podrobnosti najdete na cla.microsoft.com.
Tento projekt přijal pravidla chování pro Microsoft Open Source. Další informace najdete v nejčastějších dotazech k pravidlům chování nebo se obraťte na opencode@microsoft.com případné další dotazy nebo komentáře.
Azure SDK for .NET