连接到LDAP服务器

时间:2013-04-04 12:11:37

标签: .net ldap openldap ldapconnection unboundid-ldap-sdk

我是Ldap Server的初学者。我正在尝试使用LDAP向导与我的服务器建立连接,但不知道各种参数的值。任何人都可以提出价值观吗?我正在编写用于连接到同一服务器的代码。

来自App.Config:

<add key="ActiveDirectoryMainOU" value="Users" />
<add key="ActiveDirectoryDomain" value="intranet" />
<add key="ActiveDirectoryServer" value="intranet.city.com" />
<add key="ServiceAccountUserID" value="superUser" />
<add key="ServiceAccountPassword" value="P0R+@asq" />

来自.vb文件

...............

strDomain = ConfigurationSettings.AppSettings.Get("ActiveDirectoryDomain")
strDomainControllerLoadBalanced = ConfigurationSettings.AppSettings.Get("ActiveDirectoryServer")
strOUForAccounts = ConfigurationSettings.AppSettings.Get("ActiveDirectoryMainOU")
strServiceAccountUserID = ConfigurationSettings.AppSettings.Get("ServiceAccountUserID")
strServiceAccountPassword = ConfigurationSettings.AppSettings.Get("ServiceAccountPassword")
Try
    searchRoot = New DirectoryEntry(String.Format("LDAP://{0}/OU=" & strOUForAccounts & ",DC=" & strDomain & ",DC=city,DC=com", strDomainControllerLoadBalanced),             strServiceAccountUserID, strServiceAccountPassword, AuthenticationTypes.Secure Or AuthenticationTypes.Sealing Or AuthenticationTypes.ServerBind)
        searcher = New DirectorySearcher(searchRoot)
    searcher.SearchScope = SearchScope.Subtree
    searcher.PageSize = 1000
    searcher.CacheResults = False
    For i = 0 To arPropertiesToLoad.Length - 1
        searcher.PropertiesToLoad.Add(arPropertiesToLoad(i))
    Next
        searcher.Filter = "(&(objectCategory=user)(objectClass=person))" 'get all users
        results = searcher.FindAll()
        For Each result In results
         strObjectGUID = New Guid
             strValues(69) = New String("")

...............

请在完成个人资料创建向导的第3步或完成以下字段时建议:

身份验证方法(匿名,当前登录,外部(SSL证书),其他)

机制,校长,密码

如果可能的话,请帮助完成下一步。由于声誉较低,我无法添加屏幕截图。

1 个答案:

答案 0 :(得分:0)

我认为你.VB文件,它有这一行:

searchRoot = New DirectoryEntry(String.Format("LDAP://{0}/OU=" & strOUForAccounts & ",DC=" & strDomain & ",DC=hilton,DC=com", strDomainControllerLoadBalanced), strServiceAccountUserID, strServiceAccountPassword, AuthenticationTypes.Secure Or AuthenticationTypes.Sealing Or AuthenticationTypes.ServerBind)

我想你已经发了一些。在其中,您正在使用此部分构建URL: "LDAP://{0}/OU=" & strOUForAccounts & ",DC=" & strDomain & ",DC=hilton,DC=com"

首先,最后一位,DC=hilton,DC=com显然不是您的域名信息。并且应该以某种方式存储在配置文件中。就像你的.App文件一样,但格式正确。您可以看到他们尝试使用DC = strDomain值,但当然,希尔顿的东西显然不对。 (除非确实如此?)。

希望{0}部分有效,不知道是什么传递给了它。