Erreur de chaîne de connexion après le chiffrement à l'aide de aspnet_regiis.exe [fermé]
-
01-07-2019 - |
Question
J'ai chiffré la chaîne de connexion dans mon fichier web.config en suivant les étapes décrites dans le lien ci-dessous: http://www.codeproject.com/KB/database/WebFarmConnStringsNet20.aspx
Cependant, chaque fois que j'appelle mon application, le message d'erreur suivant s'affiche:
Impossible de déchiffrer à l'aide du fournisseur 'CustomProvider'. Message d'erreur de le fournisseur: le conteneur de clé RSA ne pouvait pas être ouvert.
Le serveur sur lequel j'effectue le chiffrement est un Windows Server 2003 R2 SP2 64 bits. À cause de cela, j'assigne l'ACL à NT Authority \ Network Service
. Pourtant, cela ne fonctionne toujours pas.
J'espère que quelqu'un a des idées sur quoi d'autre dois-je vérifier pour que cela fonctionne?
PS. Si j'ai utilisé la clé rsa par défaut NetFrameworkConfigurationKey
pour le chiffrement, la chaîne de connexion n'aura pas de problème d'accès.
La solution
Eh bien, j’ai trouvé la source du problème et c’était gênant. Dans l'attribut keyContainerName, j'ai mal orthographié le nom.
C'est ça. C’est ce qui a causé le problème.
Apparemment, le cryptage fonctionnera même si vous fournissez un keyContainerName incorrect, ce qui, j’ai supposé à tort, échouera. Donc, une fois que je déchiffre la chaîne de connexion et que je le rechiffre avec le droit keyContainerName, cela fonctionne correctement.
BTW, assurez-vous de déchiffrer votre chaîne de connexion existante avant de corriger le keyContainerName. Aspnet_regiis.exe se plaindra des données incorrectes, car le fournisseur est maintenant différent.
Autres conseils
Avez-vous pensé à ajouter le
<configProtectedData>
sur votre web.config?