Magasin de clés d’objets blob stockage Azure pour Microsoft.AspNetCore.DataProtection

Le Azure.Extensions.AspNetCore.DataProtection.Blobs package permet de stocker ASP.NET Core clés DataProtection dans Stockage Blob Azure. Les clés peuvent être partagées entre plusieurs instances d’une application web. Les applications peuvent partager des cookies d’authentification ou une protection CSRF sur plusieurs serveurs.

Prise en main

Installer le package

Installez le package avec NuGet :

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

Prérequis

Vous avez besoin d’un abonnement Azure, d’un compte de stockage et d’un conteneur de stockage pour utiliser ce package.

Pour créer un compte de stockage, vous pouvez utiliser le portail Azure, Azure PowerShell ou Azure CLI. Voici un exemple utilisant 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>"

Concepts clés

Sécurité des threads

Nous garantissons que toutes les méthodes de instance client sont sécurisées pour les threads et indépendantes les unes des autres (recommandations). Cela garantit que la recommandation de réutilisation des instances clientes est toujours sécurisée, même entre les threads.

Concepts supplémentaires

Options clientes | Accès à la réponse | Opérations de longue durée | Gestion des défaillances | Diagnostics | Moqueur | Durée de vie du client

Exemples

Pour activer les clés persistantes pour Stockage Blob Azure appelez la PersistKeysToAzureBlobStorage méthode . Le Uri fourni doit être un URI d’objet blob sous la forme https://{storage_account}.blob.core.windows.net/{container}/{blob}suivante .

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

La bibliothèque Azure Identity fournit une prise en charge facile d’Azure Active Directory pour l’authentification.

Authentification à l’aide d’une chaîne de connexion

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

Étapes suivantes

En savoir plus sur DataProtection dans ASP.NET Core.

Contribution

Ce projet accepte les contributions et les suggestions. La plupart des contributions vous demandent d’accepter un contrat de licence de contribution (CLA) déclarant que vous avez le droit de nous accorder, et que vous nous accordez réellement, les droits d’utilisation de votre contribution. Pour plus d’informations, consultez cla.microsoft.com.

Ce projet a adopté le Code de conduite Open Source de Microsoft. Pour plus d’informations, consultez les Questions fréquentes (FAQ) sur le code de conduite ou envoyez vos questions ou vos commentaires à opencode@microsoft.com.

Impressions