下一位是绑定用户所在的容器对象的完全限定路径。假设您使用的是“管理员”帐户,并且您的域名是“corp.domain.com”。“管理员”帐户位于域根目录下一层名为“用户”的容器中。因此,“用户”容器的完全限定 DN 将是:CN=Users,DC=corp,DC=domain,DC=com. 如果您要绑定的用户位于 OU 而不是容器中,则路径将包含“OU=ou-name”。
因此,在一个名为 OU 的帐户中使用一个名为 OU 的帐户,该 OUService Accounts是一个名为 OU 的子 OU,该 OUCorp Objects是一个名为的域的子 OU,corp.domain.com其完全限定路径为OU=Service Accounts,OU=Corp Objects,DC=corp,DC=domain,DC=com.
(您可以在连接字符串中使用域的名称,而不是域控制器的名称。不同之处在于,域的名称将解析为域中任何域控制器的 IP 地址。这可能是好的也可能是坏的。您不依赖任何单个域控制器来启动并运行成员资格提供程序来工作,但是该名称恰好解析为,例如,远程位置的 DC,网络连接参差不齐,那么您可能会遇到成员资格问题供应商工作。)
ASP.NET Active Directory 成员资格提供程序使用指定的用户名、密码和“连接字符串”对 Active Directory 进行经过身份验证的绑定。连接字符串由 LDAP 服务器的名称和指定用户所在的容器对象的完全限定路径组成。
连接字符串以 URI 开头
LDAP://
。对于服务器名称,您可以使用该域中的域控制器的名称——比如“dc1.corp.domain.com”。到目前为止,这给了我们
LDAP://dc1.corp.domain.com/
。下一位是绑定用户所在的容器对象的完全限定路径。假设您使用的是“管理员”帐户,并且您的域名是“corp.domain.com”。“管理员”帐户位于域根目录下一层名为“用户”的容器中。因此,“用户”容器的完全限定 DN 将是:
CN=Users,DC=corp,DC=domain,DC=com
. 如果您要绑定的用户位于 OU 而不是容器中,则路径将包含“OU=ou-name”。因此,在一个名为 OU 的帐户中使用一个名为 OU 的帐户,该 OU
Service Accounts
是一个名为 OU 的子 OU,该 OUCorp Objects
是一个名为的域的子 OU,corp.domain.com
其完全限定路径为OU=Service Accounts,OU=Corp Objects,DC=corp,DC=domain,DC=com
.将
LDAP://dc1.corp.domain.com/
与绑定用户所在的容器的完全限定路径(例如LDAP://dc1.corp.domain.com/OU=Service Accounts,OU=Corp Objects,DC=corp,DC=domain,DC=com
)结合起来,您就得到了“连接字符串”。(您可以在连接字符串中使用域的名称,而不是域控制器的名称。不同之处在于,域的名称将解析为域中任何域控制器的 IP 地址。这可能是好的也可能是坏的。您不依赖任何单个域控制器来启动并运行成员资格提供程序来工作,但是该名称恰好解析为,例如,远程位置的 DC,网络连接参差不齐,那么您可能会遇到成员资格问题供应商工作。)
键入
dsquery /?
命令提示符。例如:
dsquery user -name Ja*
获取名称以 Ja* 开头的所有用户的连接字符串。我只是使用 Softerra 的这个工具(他们制作了一个出色的免费软件 LDAP 浏览器)从当前登录的用户那里获取用户 DN: http ://www.ldapbrowser.com/download.htm
我总是在寻找正确的方式来输入 OU 时遇到问题。该命令
dsquery ou domainroot
将为您提供域中所有 OU 的正确名称列表。不确定这是否有助于更大的组织。如果您打开 ADSIedit,它应该会在您选择连接到时显示路径...
安装远程服务器管理工具:http ://www.microsoft.com/en-us/download/details.aspx?id=7887
打开命令提示符并输入 >dsquery server
有关更多信息,请查看此帖子(帖子底部): http ://www.schiffhauer.com/mvc-5-and-active-directory-authentication/
完整的语法在http://www.faqs.org/rfcs/rfc2255.html
我找到了最简单的方法:
您还可以从
我从 Microsoft windows server 2012 R2 得到这些