14

我正在尝试配置 ActiveDirectoryMembershipProvider,但我不断收到消息“无法与服务器建立安全连接”。

我在 MSDN 网站上在线看到我应该在我的网站上将信任级别配置为不受限制,但我仍然明白这一点。

这是我的例子:

<connectionStrings>

     <add name="LocalAD" connectionString="LDAP://example.com/dc=example,dc=com" />

</connectionStrings>


<membership defaultProvider="AspNetActiveDirectoryMembershipProvider">

    <providers>

        <add name="AspNetActiveDirectoryMembershipProvider"
             type="System.Web.Security.ActiveDirectoryMembershipProvider" 
             applicationName="adtest"
             connectionUsername="cn=Users"
             connectionPassword="password"
             connectionStringName="LocalAD" >

       </add>
    </providers>
</membership>

<trust level="Full" />

<authentication mode="Forms">
      <forms loginUrl="login.aspx"
             protection="All"
             timeout="30"
             name="miBenefitsAdminToolCookie"
             path="/"
             requireSSL="false"
             slidingExpiration="true"
             defaultUrl="Default.aspx"
             cookieless="UseCookies"
             enableCrossAppRedirects="false" />

 </authentication>

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

2 回答 2

5

您正在提供看起来像容器的东西,而不是用于连接到 AD 的实际用户名。提供具有足够凭据以访问 AD 的用户的规范名称。请注意,如果服务器在同一个域中,则运行工作进程的网络系统用户可能已经拥有足够的权限,您根本不需要提供名称/密码。

    <add name="AspNetActiveDirectoryMembershipProvider"
         type="System.Web.Security.ActiveDirectoryMembershipProvider" 
         applicationName="adtest"
         connectionUsername="cn=actualUser"
         connectionPassword="actualUsersPassword"
         connectionStringName="LocalAD">

   </add>
于 2009-07-22T12:18:27.567 回答
1

连接用户名可以有不同的格式,具体取决于它的配置方式。如果用户仅作为 DN(可分辨名称)添加到用户角色,则可以使用 CN=username,DC=container 的格式

如果用户作为 windows 用户添加到用户角色,则用户名只能是用户名。

我希望这个澄清会有所帮助。

于 2015-01-22T16:16:36.493 回答