2008-09-25 10 views
4

J'essaie de crypter l'élément "system.web.membership" dans Web.Config de notre application .Net pour sécuriser le nom d'utilisateur et le mot de passe dans Active Directory. J'utilise la commande aspnet_regiis pour crypter, et j'ai essayé plusieurs chaînes différentes pour la valeur de l'option "pe" sans succès. J'ai réussi à crypter l'élément "connectstrings" sur mon web.config.Problème de cryptage de l'élément d'appartenance dans web.config

Cmd

C:\Windows\Microsoft.NET\Framework\v2.0.50727>aspnet_regiis -pe "connectionStrings" -site MySite -app /MyApp 
Encrypting configuration section... 
Succeeded! 

C:\Windows\Microsoft.NET\Framework\v2.0.50727>aspnet_regiis -pe "membership" -site MySite -app /MyApp 
Encrypting configuration section... 
The configuration section 'membership' was not found. 
Failed! 

C:\Windows\Microsoft.NET\Framework\v2.0.50727>aspnet_regiis -pe "system.web.membership" -site MySite -app /MyApp 
Encrypting configuration section... 
The configuration section 'system.web.membership' was not found. 
Failed!

Web.Config

<configuration> 
    ... 
    <system.web> 
     ... 
     <authentication mode="Forms"> 
      <forms name=".ADAuthCookie" 
        timeout="30"/> 
     </authentication> 
     <authorization> 
      <deny users="?"/> 
      <allow users="*"/> 
     </authorization> 
     <membership defaultProvider="MyADMembershipProvider"> 
      <providers> 
       <add name="MyADMembershipProvider" 
        type="System.Web.Security.ActiveDirectoryMembershipProvider, System.Web, Version=2.0.0.0,Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" 
        connectionStringName="ADConnectionString" 
        connectionUsername="MyUserName" 
        connectionPassword="MyPassowrd"/> 
      </providers> 
     </membership> 
     ... 
    </system.web> 
    ... 
</configuration> 

Alors qu'est-ce qui se passe? Qu'est-ce que je rate?

Répondre

6

La section de configuration est identifiée par "system.web/membership", pas "membership" ni "system.web.membership".

4

Je sais que votre problème a déjà été résolu, mais pour d'autres personnes recevant ce message d'erreur, il semble que seules certaines sections du web.config peuvent être cryptées. J'ai essayé de chiffrer les paramètres SMTP dans ma config web:

<?xml version="1.0"?> 
<configuration> 
    <system.net> 
    <mailSettings> 
     <smtp> 
     <network host="myhost" port="25" userName="myusername" password="mypassword" /> 
     </smtp> 
    </mailSettings> 
    </system.net> 
</configuration> 

Cela a fonctionné:

aspnet_regiis.exe -pef "system.net/mailSettings/smtp" "path_to_site" -prov "DataProtectionConfigurationProvider" 

mais ceux-ci ne l'ai pas:

aspnet_regiis.exe -pef "system.net/mailSettings" "path_to_site" -prov "DataProtectionConfigurationProvider" 

aspnet_regiis.exe -pef "system.net" "path_to_site" -prov "DataProtectionConfigurationProvider"