加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

ASP.NET MVC:如何为LDAP身份验证设置web.config?

发布时间:2020-12-16 03:48:00 所属栏目:asp.Net 来源:网络整理
导读:我有一个有这些参数的工作LDAP服务器: OU=users,OU=mydomain,O=this domainLDAP://myhost:389 我成功访问了一个通用的ldap客户端,就像好的Jarek Gawor的ldap浏览器/客户端一样,具有以下设置: OU=users,O=this domainUser info (append base DN):uid=myidpa
我有一个有这些参数的工作LDAP服务器:

OU=users,OU=mydomain,O=this domain
LDAP://myhost:389

我成功访问了一个通用的ldap客户端,就像好的Jarek Gawor的ldap浏览器/客户端一样,具有以下设置:

OU=users,O=this domain
User info (append base DN):
uid=myid
password=mypwd

我试图与ASP.NET一样,总是得到错误“错误的用户名或密码”.
你可以帮我用上面的参数设置web.config吗?
我做了很多尝试,比如更改connectionUsername,删除域名,放置uid = myid等等…

web.config中

<configuration>
  <connectionStrings>
  <add name="ADConnectionString" connectionString="LDAP://myhost:389"/>
  ....

<membership defaultProvider="DefaultMembershipProvider">
  <providers>
    <add name="DefaultMembershipProvider"
         type="System.Web.Security.ActiveDirectoryMembershipProvider,System.Web,Version=2.0.0.0,Culture=neutral,PublicKeyToken=b03f5f7f11d50a3a"
         connectionStringName="ADConnectionString"
         connectionProtection="None"
         connectionUsername="MYDOMAINmyid"
         connectionPassword="mypwd"
         attributeMapUsername="sAMAccountName"
         enableSearchMethods="True" />
  </providers>
</membership>
......

提前致谢

解决方法

我成功地使用以下web.config设置.

有两个问题/错误:

1)我没有指定容器,所以我跟着@Kevin的提示:

<configuration>
  <connectionStrings>
  <add name="ADConnectionString" connectionString="LDAP://myhost:389/O=this domain,CN=Users,DC=mydomain,DC=com"/>
  ....

我认为这与CN有关,而O可以省略,但我认为这不是很重要……

2)我把DN基数和用户名(格式为uid =)放在connectionUsername参数中:

<membership defaultProvider="DefaultMembershipProvider">
  <providers>
<add name="DefaultMembershipProvider"
     type="System.Web.Security.ActiveDirectoryMembershipProvider,PublicKeyToken=b03f5f7f11d50a3a"
     connectionStringName="ADConnectionString"
     connectionProtection="None"
     connectionUsername="uid=myid,O=this domain"
     connectionPassword="mypwd"
     attributeMapUsername="sAMAccountName"
     enableSearchMethods="True" />

请注意,在我的情况下,我需要把uid = myid.我不知道这是否是一般解决方案;也许它与我公司的ADAS配置有关,我不知道.我希望这可以帮助你们中的一些人…如果你发现这个解决方案很有用,请投票.

@Kevin:非常感谢.你一直很有帮助!

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读