Chiffrement de clé Azure Key Vault pour Microsoft.AspNetCore.DataProtection

Le Azure.Extensions.AspNetCore.DataProtection.Keys package permet de protéger les clés au repos à l’aide de la fonctionnalité Azure Key Vault Key Encryption/Wrapping.

Prise en main

Installer le package

Installez le package avec NuGet :

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

Prérequis

Vous avez besoin d’un abonnement Azure, d’un Key Vault et d’une clé pour utiliser ce package.

Pour créer un Key Vault, vous pouvez utiliser le portail Azure, Azure PowerShell ou Azure CLI. Voici un exemple utilisant Azure CLI :

az keyvault create --name MyVault --resource-group MyResourceGroup --location westus
az keyvault key create --name MyKey --vault-name MyVault

# give write access to a service principal (application)
az keyvault set-policy -n MyVault --object-id <application_id> --key-permissions get unwrapKey wrapKey

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 protéger les clés à l’aide d’Azure Key Vault Key, configurez le système avec ProtectKeysWithAzureKeyVault lors de la configuration des services :

public void ConfigureServices(IServiceCollection services)
{
    services
        .AddDataProtection()
        .ProtectKeysWithAzureKeyVault(new Uri("<Key-ID>"), new DefaultAzureCredential());
}

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

É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