Microsoft.AspNetCore.DataProtection için Azure Depolama Blob Anahtar Deposu

Paket, Azure.Extensions.AspNetCore.DataProtection.Blobs ASP.NET Core DataProtection anahtarlarının Azure Blob Depolama depolanmasına olanak tanır. Anahtarlar bir web uygulamasının çeşitli örnekleri arasında paylaşılabilir. Uygulamalar, kimlik doğrulama tanımlama bilgilerini veya CSRF korumasını birden çok sunucuda paylaşabilir.

Başlarken

Paketi yükleme

NuGet ile paketi yükleyin:

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

Önkoşullar

Bu paketi kullanmak için bir Azure aboneliği, Depolama Hesabı ve Depolama Kapsayıcısı gerekir.

Yeni bir Depolama Hesabı oluşturmak için Azure Portalı, Azure PowerShell veya Azure CLI'yı kullanabilirsiniz. Aşağıda Azure CLI'yi kullanan bir örnek verilmişti:

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>"

Önemli kavramlar

İş parçacığı güvenliği

Tüm istemci örneği yöntemlerinin iş parçacığı açısından güvenli ve birbirinden bağımsız olduğunu garanti ediyoruz (kılavuz). Bu, istemci örneklerini yeniden kullanma önerisinin iş parçacıkları arasında bile her zaman güvenli olmasını sağlar.

Ek kavramlar

İstemci seçenekleri | Yanıta | erişme Uzun süre çalışan işlemler | Hataları | işleme Tanılama | Alaycı | İstemci ömrü

Örnekler

Kalıcı anahtarları etkinleştirmek için Azure Blob Depolama yöntemini çağırınPersistKeysToAzureBlobStorage. Sağlanan, Uri aşağıdaki biçimde https://{storage_account}.blob.core.windows.net/{container}/{blob}bir blob URI'sine sahip olmalıdır.

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

Azure Kimlik kitaplığı, kimlik doğrulaması için kolay Azure Active Directory desteği sağlar.

Bağlantı dizesi kullanarak kimlik doğrulama

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

Sonraki adımlar

ASP.NET Core'de DataProtection hakkında daha fazla bilgi edinin.

Katkıda bulunma

Bu proje, katkı ve önerilere açıktır. Çoğu durumda, sağladığınız katkıyı kullanmamız için bize hak tanıma hakkına sahip olduğunuzu ve bu hakkı bize tanıdığınızı bildiren bir Katkıda Bulunan Lisans Sözleşmesi’ni (CLA) kabul etmeniz gerekir. Ayrıntılar için cla.microsoft.com adresini ziyaret edin.

Bu proje Microsoft Open Source Code of Conduct (Microsoft Açık Kaynak Kullanım Kuralları) belgesinde listelenen kurallara uygundur. Daha fazla bilgi için Kullanım Kuralları SSS bölümüne bakın veya ek sorular veya yorumlarla iletişime geçin opencode@microsoft.com .

İzlenimler