0

尝试使用 AD 进行表单身份验证时遇到问题。我已按如下方式设置了所有内容,但在访问 Login.aspx 页面时出现 401 错误

从我的 Web.config:

  <connectionStrings>
      <add name="ADService" connectionString="LDAP://dc.domain.com/CN=Users,DC=domain,DC=com"/>
  </connectionStrings>

  <authentication mode="Forms">
      <forms loginUrl="Login.aspx" defaultUrl="Default.aspx" />
  </authentication>

  <authorization>
      <deny users="?" />
      <allow users="*" />
  </authorization>

  <membership defaultProvider="MyADMembershipProvider">
      <providers>
        <clear/>
          <add name="AspNetActiveDirectoryMembershipProvider" 
             type="System.Web.Security.ActiveDirectoryMembershipProvider, System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"
             connectionStringName="ADService"
             attributeMapUsername="sAMAccountName"
             connectionUsername="domain\username"
             connectionPassword="password"
             connectionProtection="None" 
             enableSearchMethods="true"/>
      </providers>
  </membership>

这一切都在带有 IIS7 的 Windows 2008 服务器上运行。我将应用程序池设置为 .net 4.0 版,已集成。当我测试直通身份验证时,它通过了。唯一启用的身份验证方法是表单身份验证。如果我切换到 Windows 身份验证,该站点可以正常工作,但我似乎无法让表单身份验证正常工作。如果我在浏览器中输入域 URL,它会重定向到 Login.aspx?ReturnUrl=%2f 并显示 401 错误,如果我尝试直接导航到 login.aspx,也会出现同样的情况。我似乎在任何服务器日志中都找不到任何问题的迹象。关于我可能遗漏的任何想法?

4

0 回答 0