代码之家  ›  专栏  ›  技术社区  ›  Eddie

在web.config中加密成员身份元素时出现问题

  •  5
  • Eddie  · 技术社区  · 18 年前

    我正在尝试加密.NET应用程序的web.config中的“system.web.membership”元素,以保护Active Directory的用户名和密码。我正在使用aspnet_regiis命令进行加密,并尝试了几个不同的字符串来获取“pe”选项的值,但没有成功。我已经成功地加密了web.config上的“connectStrings”元素。

    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>
    

    那给了什么?我错过了什么?

    2 回复  |  直到 17 年前
        1
  •  8
  •   Paul Lalonde    18 年前

    配置部分由“标识 system.web/membership “不是” membership “也” system.web.membership “。

        2
  •  4
  •   Ben Mills    17 年前

    我知道您的问题已经解决了,但是对于其他收到此错误消息的人来说,似乎只有web.config的某些部分可以加密。我试图加密Web配置中的SMTP设置:

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

    这起作用了:

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

    但这些不是:

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