中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

VB.NET如何驗證LDAP用戶身份

發布時間:2021-12-02 13:56:04 來源:億速云 閱讀:170 作者:小新 欄目:編程語言

這篇文章主要為大家展示了“VB.NET如何驗證LDAP用戶身份”,內容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領大家一起研究并學習一下“VB.NET如何驗證LDAP用戶身份”這篇文章吧。

首先,我要講的LDAP不是微軟的Active Directory目錄服務,而是運行在SUN One上面的目錄服務。

請看VB.NET驗證LDAP用戶身份的代碼(部分敏感信息刪節):

  1. Private Sub btnTest_Click()Sub btnTest_
    Click(ByVal sender As System.Object, 
    ByVal e As System.EventArgs) Handles 
    btnTest.Click  

  2. Dim LoginName As String = txtUser.Text  

  3. Dim LoginPwd As String = txtPwd.Text  

  4. If LoginPwd = "" Then  

  5. txtResult.Text = "* Password can not be blank." 

  6. Exit Sub  

  7. End If  

  8. Dim myDirectorySearcher As DirectorySearcher  

  9. Dim mySearchResult As SearchResult  

  10. Dim myDirectoryEntry As DirectoryEntry  

  11. Dim UserName As String  

  12. txtResult.Text = "" 

  13. Try  

  14. If myDirectoryEntry.Exists("LDAP:
    //ldapserver.com/uid=" & LoginName & ",
    ou=people,ou=intranet,dc=yourdomainname,
    dc=com") Then  

  15. Try  

  16. myDirectoryEntry = New DirectoryEntry
    ("LDAP://ldapserver.com/ou=people,
    ou=intranet,dc=yourdomainname,dc=com", 
    "uid=" & LoginName & ",ou=people,ou=intranet,
    dc=yourdomainname,dc=com", LoginPwd, 
    AuthenticationTypes.ServerBind)  

  17. myDirectorySearcher = New Directory
    Searcher(myDirectoryEntry)  

  18. myDirectorySearcher.Filter = "
    (uid="
     & txtUser.Text & ")"  

  19. myDirectorySearcher.PropertiesToLoad.
    Add("DisplayLastName")  

  20. myDirectorySearcher.PropertiesToLoad.
    Add("DisplayFirstName")  

  21. mySearchResult = myDirectorySearcher.FindOne  

  22. If mySearchResult Is Nothing Then  

  23. txtResult.Text += "* Login failed."  

  24. Else  

  25. txtResult.Text += ">>> Login passed!" & vbCrLf  

  26. UserName = mySearchResult.GetDirectory
    Entry().Properties("DisplayFirstName").
    Value & " " & mySearchResult.GetDirectory
    Entry().Properties("DisplayLastName").Value  

  27. txtResult.Text += UserName & vbCrLf  

  28. End If  

  29. Catch ex As Exception  

  30. txtResult.Text += "* Login failed." & 
    vbCrLf & ex.Message  

  31. End Try  

  32. Else  

  33. txtResult.Text += "* Invalid user login name."  

  34. End If  

  35. Catch ex As Exception  

  36. txtResult.Text += "* Can not access the 
    LDAP server." & vbCrLf & ex.Message  

  37. End Try  

  38. End Sub 

這里要說明一下:

1、必須檢驗密碼不能為空,否則會造成驗證有誤,即空密碼能通過驗證,不知道為什么。

2、LDAP://......這最前面的四個字母LDAP必須大寫!否則報未知錯誤,不知道為什么,還得我走了一段彎路。

3、ldapserver.com需要替換成LDAP服務器的地址。

4、LDAP://......地址后面的參數,要根據你要訪問的LDAP的設置而定。

5、如果密碼不對,會引發異常,所以我在異常處理中捕獲,但是不知道這樣是否正確。

6、If mySearchResult Is Nothing Then 這句我覺得是廢話,好像怎么也不會為True,如果密碼不對,會引發異常的,但是不放心還是加上這句,可能是我的判斷邏輯有問題。

以上是“VB.NET如何驗證LDAP用戶身份”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

航空| 芜湖市| 新沂市| 内江市| 佛山市| 泸定县| 旬阳县| 鹿邑县| 新乐市| 乐山市| 安达市| 和平县| 阜城县| 望谟县| 涞源县| 苍梧县| 城步| 分宜县| 文昌市| 资讯| 甘德县| 阿荣旗| 余江县| 石门县| 施秉县| 八宿县| 韩城市| 时尚| 积石山| 德阳市| 荔波县| 石河子市| 白水县| 渝中区| 志丹县| 濮阳市| 奈曼旗| 北流市| 沭阳县| 青川县| 青海省|