使用Studio 2013 VB。
我正在尝试从Lotus Notes Domino目录中检索组成员 - 但我无法通过此错误:“发生了协议错误。指定了失败的无效身份验证方法。”我假设(可能不正确)可以使用DirectorySearcher完成,就像我们为Active Directory一样。
我尝试使用相同的结果检索各种数据。我的研究似乎表明ldapsettings存在问题,但我使用的是其他内部脚本使用的相同别名和特定ldapsettings(尽管用perl编写)。所以ldapsettings仍然可能是问题所在。
失败的代码行是:
Dim result As SearchResult = searcher.FindOne
searcher.Filter的值是(&(objectclass = dominoGroup)(cn = mydominogroup)) 所以这看起来是正确的。
任何有关我的代码中的错误的帮助 - 甚至是更好的方式来完成此任务的建议表示赞赏。
这是我的代码:
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 pros("someattribute").Value)"
End If
Next
End If
End If
End Using
End Using
答案 0 :(得分:0)
决定调用外部进程来解决此问题。