認証目的で LDAP サーバーにアクセスするコードを VB で作成しました。ただし、例外がスローされています。おそらく、nativeObject 呼び出しによって例外が生成されています。動機は、ユーザーを認証することです。コードと例外を提供しています。この問題を解決するのを手伝ってください。
Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim cookie As HttpCookie = New HttpCookie("username")
cookie.Value = TextBox1.Text
cookie.Expires = DateAndTime.Now.AddHours(12)
Response.Cookies.Add(cookie)
Dim entry As New DirectoryEntry("LDAP://xyz.com/dc=xyz,dc=com", TextBox1.Text, TextBox2.Text)
Try
Dim obj As New Object
obj = entry.NativeObject
Dim search As New DirectorySearcher(entry)
search.Filter = "(SAMAccountName=" + TextBox1.Text + ")"
search.PropertiesToLoad.Add("cn")
Dim result As SearchResult
result = search.FindOne()
If result.Equals(Nothing) then
MsgBox("Try Again with valid username")
Else
MsgBox("User Found!")
Response.Redirect("~/Dashboard.aspx")
End If
Catch ex As Exception
MsgBox(ex.ToString)
End Try
End Sub
私が持っている例外
System.Runtime.InteropServices.COMException (0x80005000): 不明なエラー (0x80005000)
System.DirectoryServices.DirectoryEntry.Bind (ブール値 throwIfFail) で
System.DirectoryServices.DirectoryEntry.Bind() で
System.DirectoryServices.DirectoryEntry.get_NativeObject() で
_Default.Button1_Click で
解決策を教えてください/必要に応じてコードを変更してください。