如何检索Lotus Notes Domino目录组和用户 [英] How do I retrieve Lotus Notes Domino directory groups and users
问题描述
使用Studio 2013 VB。
我正在尝试从Lotus Notes Domino目录中检索组成员 - 但我无法通过此错误:A协议错误发生。失败,指定了无效的身份验证方法。我假设(可能不正确)这可以使用DirectorySearcher完成,就像我们为Active Directory一样。
我尝试使用相同的结果检索各种数据。我的研究似乎表明ldapsettings存在问题,但我使用的是其他内部脚本使用的相同别名和特定ldapsettings(尽管用perl编写)。所以ldapsettings仍然可能是问题。
失败的代码行是:
< span class =code-keyword> Dim result As SearchResult = searcher.FindOne
searcher.Filter的值是(&(objectclass = dominoGroup)(cn = groupname))
我的代码中有错误的任何帮助 - 甚至是完成的建议这个任务更好的方式是值得赞赏的。
这是我的代码:
dim grp as String = < span class =code-string> mydominogroup
使用 dEntry 作为 新 DirectoryEntry( LDAP:// mycompanyldapsettings)
dEntry.Username = myadminaccount
dEntry.Password = myadminpassword
使用搜索器 As 新 DirectorySearcher(dEntry)
searcher.Filter = String .Format( (&(objectclass = dominoGroup)(cn = {0})),grp)
Dim 结果作为 SearchResult = searcher.FindOne< - 在这里失败
如果结果 没什么 那么
找不到报告组
Else
Dim 成员 As Object = result.GetDirectoryEntry.Invoke( Members, Nothing )
如果成员 < span class =code-keyword> Nothing 然后
报告在
关键字>对于 每个成员作为 对象 在 CType (成员,IEnumerable)
Dim currentMember As 新 DirectoryEntry(成员)
如果 currentMember.SchemaClassName.ToLower = user < span class =code-keyword>然后
Dim props As PropertyCollection = currentMember.Properties
获取并列出用户props.someparm)。值)
End if
Next
End if
End If
End using
End Using
决定调用外部进程来处理此问题。解决。
Using Studio 2013 VB.
I am attempting to retrieve group members from our Lotus Notes Domino directory - but I cannot get past this error: "A protocol error occurred. Failed, invalid authentication method specified." I was assuming (maybe incorrectly) that this could be done using DirectorySearcher as we do for our Active Directory.
I have tried retrieving various data with the same results. My research seems to indicate a problem with the ldapsettings but I am using the same alias and specific ldapsettings used by other in-house scripts (albeit written in perl). So the ldapsettings still might be the problem.
The line of code that fails is:
Dim result As SearchResult = searcher.FindOne
The value of searcher.Filter is (&(objectclass=dominoGroup)(cn=groupname))
Any help with errors in my code - or even suggestions to accomplish this task a better way are appreciated.
Here is my code:
dim grp as String = "mydominogroup"
Using dEntry As New DirectoryEntry("LDAP://mycompanyldapsettings")
dEntry.Username = myadminaccount
dEntry.Password = myadminpassword
Using searcher As New DirectorySearcher(dEntry)
searcher.Filter = String.Format("(&(objectclass=dominoGroup)(cn={0}))", grp)
Dim result As SearchResult = searcher.FindOne <--fails here
If result Is Nothing Then
"report group not found"
Else
Dim members As Object = result.GetDirectoryEntry.Invoke("Members", Nothing)
If members Is Nothing Then
"report no members found in group"
Else
For Each member As Object In CType(members, IEnumerable)
Dim currentMember As New DirectoryEntry(member)
If currentMember.SchemaClassName.ToLower = "user" Then
Dim props As PropertyCollection = currentMember.Properties
"get and list the user props.someparm").Value)"
End If
Next
End If
End If
End Using
End Using
Decided to call an external process to handle this. Solved.
这篇关于如何检索Lotus Notes Domino目录组和用户的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!