Pregunta

Estoy intentando encriptar el " system.web.membership " Elemento dentro de Web.Config de nuestra aplicación .Net para asegurar el nombre de usuario y la contraseña de Active Directory. Estoy usando el comando aspnet_regiis para cifrar, y he intentado varias cadenas diferentes para el valor de la " pe " Opción sin éxito. He cifrado correctamente las " connectstrings " elemento en mi 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>

Entonces, ¿qué da? ¿Qué me estoy perdiendo?

¿Fue útil?

Solución

La sección de configuración se identifica con " system.web / membership " ;, no " membresía " ni " system.web.membership " ;.

Otros consejos

Sé que su problema ya se ha resuelto, pero para otras personas que reciben este mensaje de error, parece que solo ciertas secciones de web.config pueden cifrarse. Estaba intentando encriptar la configuración SMTP en mi configuración web:

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

Esto funcionó:

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

pero estos no lo hicieron:

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

aspnet_regiis.exe -pef "system.net" "path_to_site" -prov "DataProtectionConfigurationProvider"
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top