使用LDAP连接到Active Directory的连接字符串
我的系统管理员给了我这个:
域名:capp.net USER:capp \ dhr2
通过:admin @ 12345
连接字符串是什么?
我对adfs非常新。 所以我试过这个:
我总是收到此错误:无法与服务器建立安全连接
我对连接字符串做错了。 我只是不知道如何解决它。
每当我从.net访问AD时,我都做了以下事情:
var directoryEntry = new DirectoryEntry("LDAP://capp.net"); directoryEntry.Username = "capp\dhr2"; directoryEntry.Password = "admin@12345";
然后,您可以使用DirectorySearcher查询“AD”。
var directorySearcher = new DirectorySearcher(directoryEntry);
…
感谢大家的帮助和支持。 我的正确地址是:
LDAP://192.168.0.146/CN=USERS,DC=capp,DC=net
我在开始时没有意识到的是,我试图连接到与当前域不同的域中的Active Directory。 所以IP地址是缺失的部分。 感谢上百万的Luis,他们意识到域名存在问题。
并且感谢Shadow Walker更详细地解释了ldap连接字符串。
我们发现这最有效,以确保您有正确的参数:
通常,使用LDAP连接到AD的困难部分是确定要登录的用户的FDN。 如果您知道用户的samAccountName,您可以使用以下命令找到它:
dsquery user -samid jim "CN=Jim Willeke,CN=Users,DC=mad,DC=willeke,DC=com"
对于Active Directory,ldap连接字符串可以采用以下forms:
协议:// domaindnsaddress
协议可以是ldap://或ldaps:// ,具体取决于是使用标准连接还是SSL连接。 在迁移到SSL / TLS之前,应始终使用标准连接进行故障排除,以避免此时出现证书问题。
domaindnsaddress是您域名的DNS可解析地址 – 在您的情况下为capp.net。
某些编程语言(如php)不需要ldap://前缀来执行连接操作。 您可以尝试在没有它的情况下进行连接。
登录用户名可以有多种forms。 最常见的是:
- NetBIOS域名\ samaccountname( CAPP \ dhr2 – 注意反斜杠)
- userprincipanname( dhr2@capp.net )
- samaccountname @ domaindnsname( dhr2@capp.net )
您可以在此处阅读Microsoft有关可能的登录名称forms的详细信息:
MSDN – 简单身份validation
密码不需要任何特殊处理 – 只需对您的ldap服务器执行标准绑定操作,您应该进行身份validation。
请注意,我故意不包含任何示例代码,因为您的问题是关于连接字符串,而不是使用C#库连接到ldap。
- 在C#中,如何访问Active Directory以获取某个用户所属的组列表?
- ASP.NET如何获取Active Directory中的组列表
- 在Visual Studio中运行PowerShell脚本时无法获取Active Directory终端服务属性
- Active Directory用户组成员身份GroupPrincipal
- 快速检索用户信息的方法Active Directory
- 如何在Active Directory中获取/更新“联系人”?
- 扩展GroupPrincipal和Members属性
- 使用登录名在Active Directory中查找用户
- ActiveDirectoryMembershipProvider用于validation用户